]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
i40e: Fix RSS to not be limited by the number of CPUs
authorCatherine Sullivan <catherine.sullivan@intel.com>
Mon, 16 May 2016 17:26:41 +0000 (10:26 -0700)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Mon, 27 Jun 2016 22:58:36 +0000 (15:58 -0700)
Limiting qcount to pf->num_lan_msix, effectively limits the RSS queues
to only use the number of CPUs, and ignore all other queues. We don't
want to do this. If the user has changed the RSS settings to use more
queues then CPUS, we want to trust they know what they are doing and
let them. More importantly, if we tell them that is what we did, we want
to actually do it and allow traffic into all of the queues we have
allocated. This does not change the default setting to initially
allocate only the number of CPUS of queue pairs.

Change-ID: Ie941a96e806e4bcd016addb4e17affb46770ada5
Signed-off-by: Catherine Sullivan <catherine.sullivan@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/i40e/i40e_main.c

index 52d9d28d677d23eaad11cde722070e364b90b86d..a32be7c5e21eeead83da8ba3b4b00bf1599a388f 100644 (file)
@@ -1579,14 +1579,8 @@ static void i40e_vsi_setup_queue_map(struct i40e_vsi *vsi,
        vsi->tc_config.numtc = numtc;
        vsi->tc_config.enabled_tc = enabled_tc ? enabled_tc : 1;
        /* Number of queues per enabled TC */
-       /* In MFP case we can have a much lower count of MSIx
-        * vectors available and so we need to lower the used
-        * q count.
-        */
-       if (pf->flags & I40E_FLAG_MSIX_ENABLED)
-               qcount = min_t(int, vsi->alloc_queue_pairs, pf->num_lan_msix);
-       else
-               qcount = vsi->alloc_queue_pairs;
+       qcount = vsi->alloc_queue_pairs;
+
        num_tc_qps = qcount / numtc;
        num_tc_qps = min_t(int, num_tc_qps, i40e_pf_get_max_q_per_tc(pf));