linux/drivers/net/ethernet/sfc
Shradha Shah b0fbdae127 sfc: Allow driver to cope with a lower number of VIs than it needs for RSS
Previously, the driver would refuse to load if it couldn't secure
enough VIs from the MC to fulfill its RSS requirements.
This was causing probe to fail on later functions in
configurations where we'd run out of VIs, such as having many
VFs.

This change allows the driver to load with fewer VIs, down to a
minimum of 2. A warning will be printed saying that RSS
requirements were not met, possibly affecting performance.

efx->max_tx_channels needs to be set to avoid going down the
failure path in efx_probe_nic() immediately in the loop after the
probe() NIC-type function.
Also, Set rc=ENOSPC when bombing out of efx_probe_nic due to lack
of VIs.

Signed-off-by: Shradha Shah <sshah@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2015-08-28 13:53:47 -07:00
..
bitfield.h sfc: Update copyright banners 2013-08-29 23:34:51 +01:00
ef10_regs.h sfc: Remove unused definitions of EF10 user-mode DMA descriptors 2014-02-12 17:53:34 -05:00
ef10_sriov.c sfc: Ensure down_write(&filter_sem) and up_write() are matched before calling efx_net_open() 2015-07-08 16:18:52 -07:00
ef10_sriov.h sfc: add legacy method for changing a PF's MAC address 2015-07-08 16:07:33 -07:00
ef10.c sfc: Allow driver to cope with a lower number of VIs than it needs for RSS 2015-08-28 13:53:47 -07:00
efx.c sfc: Allow driver to cope with a lower number of VIs than it needs for RSS 2015-08-28 13:53:47 -07:00
efx.h sfc: Allow driver to cope with a lower number of VIs than it needs for RSS 2015-08-28 13:53:47 -07:00
enum.h sfc: Change entity reset on MC reboot to a new datapath-only reset. 2015-05-21 18:43:54 -04:00
ethtool.c sfc: protect filter table against use-after-free 2015-05-21 18:43:53 -04:00
falcon_boards.c sfc: Update copyright banners 2013-08-29 23:34:51 +01:00
falcon.c sfc: Allow driver to cope with a lower number of VIs than it needs for RSS 2015-08-28 13:53:47 -07:00
farch_regs.h sfc: Update copyright banners 2013-08-29 23:34:51 +01:00
farch.c sfc: Own header for nic-specific sriov functions, single instance of netdev_ops and sriov removed from Falcon code 2015-05-09 16:16:46 -04:00
filter.h sfc: Use ether_addr_copy and eth_broadcast_addr 2014-03-10 13:53:37 -04:00
io.h sfc: PIO:Restrict to 64bit arch and use 64-bit writes. 2014-06-11 15:36:21 -07:00
Kconfig sfc: add sysfs entry to control MCDI tracing 2015-05-27 13:54:51 -04:00
Makefile sfc: Enable VF's via a write to the sysfs file sriov_numvfs 2015-05-09 16:16:46 -04:00
mcdi_mon.c sfc: Add new sensor names 2013-12-12 22:06:54 +00:00
mcdi_pcol.h sfc: update MCDI protocol definitions 2015-07-21 22:21:31 -07:00
mcdi_port.c sfc: suppress ENOENT error messages from MC_CMD_MAC_STATS 2015-06-02 12:57:29 -07:00
mcdi.c sfc: add output flag decoding to efx_mcdi_set_workaround 2015-07-21 22:21:32 -07:00
mcdi.h sfc: add output flag decoding to efx_mcdi_set_workaround 2015-07-21 22:21:32 -07:00
mdio_10g.c sfc: Update copyright banners 2013-08-29 23:34:51 +01:00
mdio_10g.h sfc: Remove extern from function prototypes 2013-09-24 12:52:53 -07:00
mtd.c sfc: Update copyright banners 2013-08-29 23:34:51 +01:00
net_driver.h sfc: Allow driver to cope with a lower number of VIs than it needs for RSS 2015-08-28 13:53:47 -07:00
nic.c sfc: fix calling of free_irq with already free vector 2014-05-12 14:56:45 -04:00
nic.h sfc: enable cascaded multicast filters in MCFW 2015-07-21 22:21:31 -07:00
phy.h sfc: Remove extern from function prototypes 2013-09-24 12:52:53 -07:00
ptp.c sfc: Initialise MCDI buffers to 0 on declaration. 2015-05-21 18:43:53 -04:00
qt202x_phy.c sfc: Update copyright banners 2013-08-29 23:34:51 +01:00
rx.c sfc: free multiple Rx buffers when required 2015-05-31 17:36:20 -07:00
selftest.c sfc: allow ethtool selftest and MC reboot to complete on an unprivileged function 2015-07-31 15:32:05 -07:00
selftest.h sfc: Add MC BISTs to ethtool offline self test on EF10 2013-12-12 22:05:48 +00:00
siena_sriov.c sfc: save old MAC address in case sriov_mac_address_changed fails 2015-05-21 18:43:53 -04:00
siena_sriov.h sfc: save old MAC address in case sriov_mac_address_changed fails 2015-05-21 18:43:53 -04:00
siena.c sfc: Allow driver to cope with a lower number of VIs than it needs for RSS 2015-08-28 13:53:47 -07:00
sriov.c sfc: Implement ndo_gets_phys_port_id() for EF10 VFs 2015-06-02 12:57:26 -07:00
sriov.h sfc: Implement ndo_gets_phys_port_id() for EF10 VFs 2015-06-02 12:57:26 -07:00
tenxpress.c sfc: Update copyright banners 2013-08-29 23:34:51 +01:00
tx.c sfc: Report TX completions to BQL after all TX events in interrupt 2015-07-09 00:00:40 -07:00
txc43128_phy.c sfc: Update copyright banners 2013-08-29 23:34:51 +01:00
vfdi.h ethernet: codespell comment spelling fixes 2015-03-08 22:54:22 -04:00
workarounds.h sfc: Update copyright banners 2013-08-29 23:34:51 +01:00