Commit 40746eb1 authored by Mitch Williams's avatar Mitch Williams Committed by Jeff Kirsher

i40evf: don't configure unused RSS queues

The driver will only configure as many queues as there are available
CPUs, up the maximum number of queues. However, it always configures
RSS as though it is using the maximum number of queues. This can cause
the device to drop a lot of RX traffic, as the packets get assigned to
nonfunctional queues.

Fix this by only configuring RSS with the number of active queues.
Signed-off-by: default avatarMitch Williams <mitch.a.williams@intel.com>
Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
parent 67c818a1
...@@ -1461,7 +1461,7 @@ static void i40evf_configure_rss(struct i40evf_adapter *adapter) ...@@ -1461,7 +1461,7 @@ static void i40evf_configure_rss(struct i40evf_adapter *adapter)
for (i = 0; i <= I40E_VFQF_HLUT_MAX_INDEX; i++) { for (i = 0; i <= I40E_VFQF_HLUT_MAX_INDEX; i++) {
lut = 0; lut = 0;
for (j = 0; j < 4; j++) { for (j = 0; j < 4; j++) {
if (cqueue == adapter->vsi_res->num_queue_pairs) if (cqueue == adapter->num_active_queues)
cqueue = 0; cqueue = 0;
lut |= ((cqueue) << (8 * j)); lut |= ((cqueue) << (8 * j));
cqueue++; cqueue++;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment