summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorWilliams, Mitch A <mitch.a.williams@intel.com>2011-06-07 14:22:57 -0700
committerGreg Kroah-Hartman <gregkh@suse.de>2011-06-23 15:05:40 -0700
commit50224eeecc2357b6287ed2dc81963b61d89f824d (patch)
tree400ded710ef42cf97c1c3010da34ce1dc75bad74 /drivers
parentc0ada91b9e3d46f7584f5a5392baecd5b3add5a8 (diff)
igb: fix i350 SR-IOV failture
commit 665c8c8ee405738375b679246b49342ce38ba056 upstream. When SR-IOV is enabled, i350 devices fail to pass traffic. This is due to the driver attempting to enable RSS on the PF device, which is not supported by the i350. When max_vfs is specified on an i350 adapter, set the number of RSS queues to 1. This issue affects 2.6.39 as well. Signed-off-by: Mitch Williams <mitch.a.williams@intel.com> Tested-by: Jeff Pieper <jeffrey.e.pieper@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/igb/igb_main.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/igb/igb_main.c b/drivers/net/igb/igb_main.c
index 0dfd1b93829e..0e3fccbd41a3 100644
--- a/drivers/net/igb/igb_main.c
+++ b/drivers/net/igb/igb_main.c
@@ -2372,6 +2372,9 @@ static int __devinit igb_sw_init(struct igb_adapter *adapter)
}
#endif /* CONFIG_PCI_IOV */
adapter->rss_queues = min_t(u32, IGB_MAX_RX_QUEUES, num_online_cpus());
+ /* i350 cannot do RSS and SR-IOV at the same time */
+ if (hw->mac.type == e1000_i350 && adapter->vfs_allocated_count)
+ adapter->rss_queues = 1;
/*
* if rss_queues > 4 or vfs are going to be allocated with rss_queues