linux/drivers/net
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
..
appletalk
arcnet
bonding
caif
can linux-can-next-for-4.10-20161201 2016-12-03 15:26:30 -05:00
cris
dsa net: dsa: mv88e6xxx: add PPU operations 2016-12-06 11:32:28 -05:00
ethernet i40e: recalculate vsi->active_filters from hash contents 2016-12-06 21:22:19 -08:00
fddi
fjes
hamradio
hippi
hyperv hv_netvsc: remove excessive logging on MTU change 2016-11-29 20:50:07 -05:00
ieee802154 ieee802154: fakelb: print number of created fake devices during probe 2016-11-30 12:33:07 +01:00
ipvlan Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-12-03 12:29:53 -05:00
irda irda: w83977af_ir: Neaten logging 2016-12-06 21:46:56 -05:00
phy net: phy: dp83848: Support ethernet pause frames 2016-12-05 13:13:32 -05:00
plip
ppp
slip
team
usb Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-12-06 21:33:19 -05:00
vmxnet3
wan
wimax
wireless iwlwifi: use reset to set transport header 2016-12-03 15:49:16 -05:00
xen-netback
dummy.c
eql.c
geneve.c geneve: avoid use-after-free of skb->data 2016-12-02 14:07:11 -05:00
gtp.c
ifb.c
Kconfig
LICENSE.SRC
loopback.c
macsec.c
macvlan.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-11-26 23:42:21 -05:00
macvtap.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-12-03 12:29:53 -05:00
Makefile
mdio.c
mii.c
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c
Space.c
sungem_phy.c
tun.c tun: Use netif_receive_skb instead of netif_rx 2016-12-06 22:24:59 -05:00
veth.c
virtio_net.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-12-06 21:33:19 -05:00
vrf.c
vxlan.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-12-03 12:29:53 -05:00
xen-netfront.c