num_rcv_contexts sets the number of user contexts, both receive and send.
Renaming it to num_user_contexts makes sense to reflect its true meaning.
When num_rcv_contexts is 0, the default behavior is the number of CPU
cores instead of 0 contexts. This commit changes the variable
num_rcv_contexts to num_user_contexts, and it also makes any negative
value for this variable default to the number of CPU cores, so if
num_user_contexts is set >= 0, the value will number of contexts.
Reviewed-by: Mike Marciniszyn <mike.marciniszyn@intel.com>
Signed-off-by: Sebastian Sanchez <sebastian.sanchez@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 static int set_up_context_variables(struct hfi1_devdata *dd)
 {
        int num_kernel_contexts;
-       int num_user_contexts;
        int total_contexts;
        int ret;
        unsigned ngroups;
        }
        /*
         * User contexts: (to be fixed later)
-        *      - set to num_rcv_contexts if non-zero
-        *      - default to 1 user context per CPU
+        *      - default to 1 user context per CPU if num_user_contexts is
+        *        negative
         */
-       if (num_rcv_contexts)
-               num_user_contexts = num_rcv_contexts;
-       else
+       if (num_user_contexts < 0)
                num_user_contexts = num_online_cpus();
 
        total_contexts = num_kernel_contexts + num_user_contexts;
 
 extern unsigned int hfi1_max_mtu;
 extern unsigned int hfi1_cu;
 extern unsigned int user_credit_return_threshold;
-extern uint num_rcv_contexts;
+extern int num_user_contexts;
 extern unsigned n_krcvqs;
 extern u8 krcvqs[];
 extern int krcvqsset;
 
  * Number of user receive contexts we are configured to use (to allow for more
  * pio buffers per ctxt, etc.)  Zero means use one user context per CPU.
  */
-uint num_rcv_contexts;
-module_param_named(num_rcv_contexts, num_rcv_contexts, uint, S_IRUGO);
+int num_user_contexts = -1;
+module_param_named(num_user_contexts, num_user_contexts, uint, S_IRUGO);
 MODULE_PARM_DESC(
-       num_rcv_contexts, "Set max number of user receive contexts to use");
+       num_user_contexts, "Set max number of user contexts to use");
 
 u8 krcvqs[RXE_NUM_DATA_VL];
 int krcvqsset;