Jacob Keller
38326218ac
i40e: recalculate vsi->active_filters from hash contents
...
Previous code refactors have accidentally caused issues with the
counting of active_filters. Avoid similar issues in the future by simply
re-counting the active filters every time after we handle add and delete
of all the filters. Additionally this allows us to simplify the check
for when we exit promiscuous mode since we can combine the check for
failed filters at the same time.
Additionally since we recount filters at the end we need to set
vsi->promisc_threshold as well.
The resulting code takes a bit longer since we do have to loop over
filters again. However, the result is more readable and less likely to
become incorrect due to failed accounting of filters in the future.
Finally, this ensures that it is not possible for vsi->active_filters to
ever underflow since we never decrement it.
Change-ID: Ib4f3a377e60eb1fa6c91ea86cc02238c08edd102
Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2016-12-06 21:22:19 -08:00
..
accessibility
acpi
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2016-11-26 23:42:21 -05:00
amba
android
ata
ahci: always fall back to single-MSI mode
2016-11-21 11:06:57 -05:00
atm
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2016-12-06 21:33:19 -05:00
auxdisplay
base
devres: add devm_alloc_percpu()
2016-11-15 22:34:25 -05:00
bcma
bcma: add Dell Inspiron 3148
2016-11-29 17:35:14 +02:00
block
zram: fix unbalanced idr management at hot removal
2016-11-30 16:32:52 -08:00
bluetooth
Bluetooth: hci_qca: Use setup_timer Kernel API instead of init_timer
2016-11-27 07:41:05 +01:00
bus
cdrom
char
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2016-11-22 13:27:16 -05:00
clk
Two small fixes for MIPI PLLs on sunxi devices and a build fix
2016-11-30 15:15:49 -08:00
clocksource
connector
cpufreq
Merge branches 'pm-cpufreq-fixes' and 'pm-sleep-fixes'
2016-10-29 01:29:17 +02:00
cpuidle
crypto
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2016-12-06 21:33:19 -05:00
dax
device-dax: fail all private mapping attempts
2016-11-16 09:00:38 -08:00
dca
devfreq
dio
dma
dmaengine: cppi41: More PM runtime fixes
2016-11-17 16:09:23 +05:30
dma-buf
edac
eisa
extcon
firewire
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2016-11-15 10:54:36 -05:00
firmware
fmc
fpga
gpio
gpio: Remove GPIO_DEVRES option
2016-11-16 20:46:32 +01:00
gpu
Merge tag 'drm-intel-fixes-2016-12-01' of git://anongit.freedesktop.org/git/drm-intel into drm-fixes
2016-12-04 06:31:26 +10:00
hid
HID: hid-sensor-hub: clear memory to avoid random data
2016-11-23 17:54:58 +01:00
hsi
hv
vmbus: make sysfs names consistent with PCI
2016-11-01 09:07:13 -06:00
hwmon
hwspinlock
hwtracing
i2c
Revert "i2c: octeon: thunderx: Limit register access retries"
2016-11-29 20:04:21 +01:00
ide
idle
iio
iio: maxim_thermocouple: detect invalid storage size in read()
2016-11-13 10:08:32 +01:00
infiniband
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2016-11-22 13:27:16 -05:00
input
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
2016-12-01 10:29:41 -08:00
iommu
Merge git://git.infradead.org/intel-iommu
2016-11-27 08:24:46 -08:00
ipack
ipack: print a hex number after a 0x prefix
2016-10-27 18:43:43 -07:00
irqchip
isdn
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2016-12-06 21:33:19 -05:00
leds
lguest
lightnvm
macintosh
mailbox
mailbox: PCC: Fix lockdep warning when request PCC channel
2016-11-14 22:07:38 +01:00
mcb
md
Merge tag 'md/4.9-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/shli/md
2016-11-05 11:34:07 -07:00
media
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2016-11-26 23:42:21 -05:00
memory
memstick
message
mfd
mfd: wm8994-core: Don't use managed regulator bulk get API
2016-11-25 11:10:55 +00:00
misc
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2016-11-15 10:54:36 -05:00
mmc
mmc: dw_mmc: fix the error handling for dma operation
2016-11-21 11:08:28 +01:00
mtd
MTD updates for 4.9-rc4:
2016-11-05 10:52:29 -07:00
net
i40e: recalculate vsi->active_filters from hash contents
2016-12-06 21:22:19 -08:00
nfc
mei: bus: fix received data size check in NFC fixup
2016-10-31 10:25:22 -06:00
ntb
ntb_perf: potential info leak in debugfs
2016-11-13 16:48:30 -05:00
nubus
nvdimm
nvdimm: make CONFIG_NVDIMM_DAX 'bool'
2016-10-27 16:16:21 -07:00
nvme
nvme/pci: Don't free queues on error
2016-11-16 12:39:57 -07:00
nvmem
of
of_mdio: add helper to deregister fixed-link PHYs
2016-11-29 23:17:02 -05:00
oprofile
parisc
parport
pci
pci-v4.9-fixes-4
2016-12-01 16:44:42 -08:00
pcmcia
pcmcia: fix return value of soc_pcmcia_regulator_set
2016-11-11 08:45:08 -08:00
perf
phy
phy: twl4030-usb: Fix for musb session bit based PM
2016-11-17 16:25:40 +01:00
pinctrl
pinctrl-aspeed-g5: Never set SCU90[6]
2016-11-07 10:31:33 +01:00
platform
ACPI fix for v4.9-rc5
2016-11-11 17:02:01 -08:00
pnp
power
powercap
pps
ps3
ptp
ptp: Introduce a high resolution frequency adjustment method.
2016-11-09 21:19:53 -05:00
pwm
pwm: Fix device reference leak
2016-11-29 16:43:24 +01:00
rapidio
ras
regulator
regulator: core: silence warning: "VDD1: ramp_delay not set"
2016-10-28 18:22:40 +01:00
remoteproc
reset
rpmsg
rtc
rtc: omap: prevent disabling of clock/module during suspend
2016-11-04 23:11:39 +01:00
s390
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2016-10-30 12:42:58 -04:00
sbus
scsi
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2016-12-03 12:29:53 -05:00
sfi
sh
sn
soc
spi
Merge remote-tracking branches 'spi/fix/dt', 'spi/fix/fsl-dspi' and 'spi/fix/fsl-espi' into spi-linus
2016-10-29 12:51:55 -06:00
spmi
ssb
ssb: Fix error routine when fallback SPROM fails
2016-11-17 08:49:04 +02:00
staging
staging: wilc1000: use reset to set mac header
2016-12-03 15:49:16 -05:00
target
cxgb4: Allocate Tx queues dynamically
2016-11-18 14:04:29 -05:00
tc
thermal
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2016-11-26 23:42:21 -05:00
thunderbolt
tty
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2016-10-30 12:42:58 -04:00
uio
usb
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2016-11-26 23:42:21 -05:00
uwb
uwb: fix device reference leaks
2016-11-01 09:04:04 -06:00
vfio
vhost
video
video: ARM CLCD: fix Vexpress regression
2016-11-03 12:20:14 +02:00
virt
virtio
virtio_ring: mark vring_dma_dev inline
2016-10-31 00:40:08 +02:00
vlynq
vme
vme: vme_get_size potentially returning incorrect value on failure
2016-10-28 08:25:18 -04:00
w1
watchdog
Merge branches 'acpi-sleep-fixes' and 'acpi-wdat-fixes'
2016-11-25 22:24:07 +01:00
xen
zorro
Kconfig
Makefile