linux_dsm_epyc7002/drivers
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
..
accessibility
acpi nfit: fail DSMs that return non-zero status by default 2016-09-21 09:35:19 -07:00
amba
android
ata
atm atm: iphase: fix newline escape and minor tweak to source formatting 2016-09-15 19:15:55 -04:00
auxdisplay
base regmap: Fix for v4.8 2016-09-23 11:50:49 -07:00
bcma
block
bluetooth Bluetooth: Use single return in hci_uart_tty_ioctl() call 2016-09-24 06:40:24 +02:00
bus
cdrom
char
clk
clocksource
connector
cpufreq
cpuidle
crypto chcr/cxgb4i/cxgbit/RDMA/cxgb4: Allocate resources dynamically for all cxgb4 ULD's 2016-09-19 01:37:32 -04:00
dax
dca
devfreq
dio
dma
dma-buf
edac
eisa
extcon
firewire
firmware Merge branch 'efi-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-09-13 12:02:00 -07:00
fmc
fpga
gpio
gpu drm/udl: fix line iterator in damage handling 2016-09-28 13:29:18 +10:00
hid
hsi
hv
hwmon
hwspinlock
hwtracing
i2c i2c: qup: skip qup_i2c_suspend if the device is already runtime suspended 2016-09-22 20:11:14 +02:00
ide
idle
iio
infiniband Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-09-23 06:46:57 -04:00
input Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2016-09-30 21:25:09 -07:00
iommu
ipack
irqchip irqchip/mips-gic: Fix local interrupts 2016-09-20 23:20:02 +02:00
isdn
leds
lguest
lightnvm
macintosh
mailbox
mcb
md Merge tag 'md/4.8-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/shli/md 2016-09-13 11:19:52 -07:00
media [media] cx23885/saa7134: assign q->dev to the PCI device 2016-09-19 12:38:05 -03:00
memory
memstick
message
mfd
misc
mmc mmc: dw_mmc: fix the spamming log message 2016-09-22 09:34:13 +02:00
mtd Another round of MTD fixes for v4.8 2016-09-28 12:53:08 -07:00
net i40e: fix MSI-X vector redistribution if hw limit is reached 2016-10-03 19:09:09 -07:00
nfc
ntb
nubus
nvdimm libnvdimm, region: fix flush hint table thinko 2016-09-24 11:45:38 -07:00
nvme nvme-rdma: only clear queue flags after successful connect 2016-09-22 19:58:17 -06:00
nvmem
of
oprofile
parisc
parport
pci PCI updates for v4.8: 2016-09-14 14:06:30 -07:00
pcmcia
perf
phy
pinctrl
platform
pnp
power
powercap
pps
ps3
ptp ptp: Fix resource leak in case of error 2016-10-03 21:54:10 -04:00
pwm
rapidio rapidio/rio_cm: avoid GFP_KERNEL in atomic context 2016-09-19 15:36:17 -07:00
ras
regulator
remoteproc
reset
rpmsg
rtc
s390 s390/qeth: fix setting VIPA address 2016-09-16 04:29:14 -04:00
sbus
scsi Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-10-02 22:20:41 -04:00
sfi
sh
sn
soc
spi
spmi
ssb
staging Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-09-23 06:46:57 -04:00
target chcr/cxgb4i/cxgbit/RDMA/cxgb4: Allocate resources dynamically for all cxgb4 ULD's 2016-09-19 01:37:32 -04:00
tc
thermal
thunderbolt
tty
uio
usb USB-serial fixes for v4.8-rc7 2016-09-16 17:42:10 +02:00
uwb
vfio
vhost
video
virt
virtio
vlynq
vme
w1
watchdog
xen
zorro
Kconfig
Makefile