linux_dsm_epyc7002/drivers/net/ethernet
Stefan Assmann 4ce20abc64 i40e: fix MSI-X vector redistribution if hw limit is reached
The driver allocates 1 vector per CPU thread and the current hardware
limit for vectors is 129 per PF. On systems with 128 or more threads
this currently means all vectors are used by the PF leaving no room for
additional features like VMDq, iWARP, etc...
The code that should redistribute the vectors in this case is broken and
never triggers. Fixed the code so that it actually triggers if the
hardware limit is reached and adjust the number of queue pairs
accordingly.
Also the number of initially requested iWARP vectors was not properly
saved when the vector limit was reached, and therefore always zero.

Comparison with debug statement.
Before:
i40e 0000:2d:00.0: VMDq disabled, not enough MSI-X vectors
i40e 0000:2d:00.0: IWARP disabled, not enough MSI-X vectors
i40e 00.0 MSI-X vector distribution: PF 128, VMDq 0, FDSB 0, iWARP 0
After:
i40e 0000:2d:00.0: MSI-X vector limit reached, attempting to redistribute vectors
i40e 00.0 MSI-X vector distribution: PF 78, VMDq 8, FDSB 0, iWARP 42

Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2016-10-03 19:09:09 -07:00
..
3com 3c59x: use IS_ENABLED() instead of checking for built-in or module 2016-09-12 20:27:57 -07:00
8390 net: ethernet: ax88796: avoid null pointer dereference 2016-08-01 13:32:51 -07:00
adaptec starfire: use IS_ENABLED() instead of checking for built-in or module 2016-09-12 20:27:57 -07:00
adi net: bfin_mac: Fix a few spelling fixes 2016-08-13 15:14:56 -07:00
aeroflex net: ethernet: greth: use phy_ethtool_{get|set}_link_ksettings 2016-08-08 15:42:21 -07:00
agere net: ethernet: et131x: constify ethtool_ops structures 2016-08-31 09:22:30 -07:00
allwinner
alteon
altera ethernet: altera: add missing of_node_put 2016-08-01 21:42:57 -07:00
amazon net: ena: change the return type of ena_set_push_mode() to be void. 2016-08-23 17:42:33 -07:00
amd ethernet: amd: use IS_ENABLED() instead of checking for built-in or module 2016-09-12 20:27:58 -07:00
apm drivers: net: xgene: Fix MSS programming 2016-09-23 08:38:38 -04:00
apple
arc net: arc_emac: mark arc_mdio_reset() static 2016-09-06 15:58:59 -07:00
atheros alx: fix error handling in __alx_open 2016-09-15 20:15:26 -04:00
aurora ethernet: aurora: nb8800: add missing of_node_put after calling of_parse_phandle 2016-08-01 21:43:47 -07:00
broadcom Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-10-02 22:20:41 -04:00
brocade Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-09-23 06:46:57 -04:00
cadence net: macb: fix missing unlock on error in macb_start_xmit() 2016-09-13 11:42:27 -04:00
calxeda
cavium net: thunderx: Support for byte queue limits 2016-09-24 08:47:15 -04:00
chelsio cxgb4: unexport cxgb4_dcb_enabled 2016-10-03 01:33:15 -04:00
cirrus
cisco net: enic: use correct type specifier 2016-08-01 13:32:52 -07:00
davicom dm9000: Fix irq trigger type setup on non-dt platforms 2016-08-09 15:08:22 -07:00
dec net: fix up a few missing hashtable.h conflict resolutions 2016-08-13 14:51:02 -07:00
dlink sundance: use IS_ENABLED() instead of checking for built-in or module 2016-09-12 20:27:58 -07:00
emulex be2net: fix non static symbol warnings 2016-09-25 23:47:30 -04:00
ezchip Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-07-24 00:53:32 -04:00
faraday net/faraday: Mask out PHYSTS_CHG interrupt 2016-09-22 03:31:14 -04:00
freescale net: fec: set mac address unconditionally 2016-10-03 01:27:41 -04:00
fujitsu
hisilicon net: hip04: mark tx_done() static 2016-09-26 02:23:39 -04:00
hp
i825xx i825xx: use IS_ENABLED() instead of checking for built-in or module 2016-09-12 20:27:58 -07:00
ibm Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-09-23 06:46:57 -04:00
intel i40e: fix MSI-X vector redistribution if hw limit is reached 2016-10-03 19:09:09 -07:00
marvell net: mvmdio: do not clk_disable_unprepare() NULL clock 2016-10-03 02:03:27 -04:00
mediatek net: ethernet: mediatek: mark symbols static where possible 2016-10-03 01:23:47 -04:00
mellanox mlxsw: spectrum_router: avoid potential uninitialized data usage 2016-10-03 01:55:18 -04:00
micrel
microchip
moxa
myricom
natsemi natsemi: use IS_ENABLED() instead of checking for built-in or module 2016-09-12 20:27:59 -07:00
neterion net: s2io: simplify logical constraint 2016-08-01 13:32:52 -07:00
netronome nfp: bpf: zero extend 4 byte context loads 2016-09-30 02:10:15 -04:00
nuvoton net: ethernet: nuvoton: fix spelling mistake: "aligment" -> "alignment" 2016-08-18 23:29:43 -07:00
nvidia
nxp net: lpc_eth: Check clk_prepare_enable() error 2016-08-23 17:10:16 -07:00
oki-semi
packetengines
pasemi net: ethernet: pasemi_mac: use phy_ethtool_{get|set}_link_ksettings 2016-07-15 16:41:34 -07:00
qlogic net: Update API for VF vlan protocol 802.1ad support 2016-09-24 08:01:26 -04:00
qualcomm net: qcom/emac: fix return value check in emac_sgmii_config() 2016-10-03 21:53:03 -04:00
rdc net: r6040: add in missing white space in error message text 2016-09-18 22:22:16 -04:00
realtek 8139cp: Fix one possible deadloop in cp_rx_poll 2016-08-25 17:02:48 -07:00
renesas sh_eth: add R8A7743/5 support 2016-09-28 05:01:50 -04:00
rocker rocker: use FIB notifications instead of switchdev calls 2016-09-28 04:48:00 -04:00
samsung
seeq
sfc net: Update API for VF vlan protocol 802.1ad support 2016-09-24 08:01:26 -04:00
sgi
silan
sis sis900: use IS_ENABLED() instead of checking for built-in or module 2016-09-12 20:27:59 -07:00
smsc net: smc91x: take into account register shift 2016-09-25 23:45:32 -04:00
stmicro Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-09-23 06:46:57 -04:00
sun
synopsys dwc_eth_qos: constify net_device_ops structures 2016-09-17 10:07:23 -04:00
tehuti net: tehuti: fix typo: "eneble" -> "enable" 2016-08-21 15:21:36 -07:00
ti net: ti: cpmac: Fix compiler warning due to type confusion 2016-09-04 11:47:20 -07:00
tile
toshiba net: Remove NO_IRQ from powerpc-only network drivers 2016-09-13 11:40:51 -04:00
tundra net/ethernet: tundra: fix dump_eth_one warning in tsi108_eth 2016-08-08 13:08:21 -07:00
via via-velocity: remove null pointer check on array tdinfo->skb_dma 2016-09-09 18:17:33 -07:00
wiznet
xilinx net: ethernet: xilinx: Enable emaclite for MIPS 2016-09-08 16:06:37 -07:00
xircom
xscale
dnet.c
dnet.h
ec_bhf.c
ethoc.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-07-24 00:53:32 -04:00
fealnx.c
jme.c
jme.h
Kconfig net: ena: Add a driver for Amazon Elastic Network Adapters (ENA) 2016-08-12 17:12:08 -07:00
korina.c
lantiq_etop.c
Makefile net: ena: Add a driver for Amazon Elastic Network Adapters (ENA) 2016-08-12 17:12:08 -07:00
netx-eth.c