linux_dsm_epyc7002/drivers/net/ethernet
Ben Hutchings d9ccfdd4b3 sfc: Fix replacement detection in efx_filter_insert_filter()
efx_filter_insert_filter() uses the first table entry in the hash chain
that either has the same match values or is empty.  This means that
replacement doesn't always work correctly:

1. Insert filter F1 with match values M1, hashing to H1, at first
   possible entry E1.
2. Insert filter F2 with match values M2, hashing to H1, at second
   possible entry E2.
3. Remove filter F1.
4. Insert filter F3 with match values M2, hashing to H1, at first
   possible entry E1.

F3 should have either replaced F2 or been rejected (depending on
priority and the replace_equal parameter).

Instead, search for both a matching filter that the inserted filter
would replace, and an available insertion point, up to the applicable
maximum search depths.  If we insert at lower depth than a replaced
filter, clear the replaced filter.

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
2013-03-07 20:22:02 +00:00
..
3com Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-01-29 15:32:13 -05:00
8390 Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
adaptec
adi Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-01-15 15:05:59 -05:00
aeroflex net: phy: remove flags argument from phy_{attach, connect, connect_direct} 2013-01-14 15:11:50 -05:00
alteon
amd drivers: net: Remove remaining alloc/OOM messages 2013-02-08 17:44:39 -05:00
apple
atheros Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
broadcom bnx2x: use the default NAPI weight 2013-03-05 23:40:01 -05:00
brocade
cadence net: macb: use module_platform_driver_probe() 2013-03-05 23:39:13 -05:00
calxeda Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-01-29 15:32:13 -05:00
chelsio Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2013-02-26 20:16:07 -08:00
cirrus net: cs89x0: use module_platform_driver_probe() 2013-03-05 23:39:13 -05:00
cisco enic: change sprintf() to snprintf() 2013-01-18 14:34:48 -05:00
davicom
dec Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
dlink drivers/net: delete old parallel port de600/de620 drivers 2013-01-22 10:39:49 -05:00
emulex be2net: remove BUG_ON() in be_mcc_compl_is_new() 2013-02-13 13:52:55 -05:00
faraday net: phy: remove flags argument from phy_{attach, connect, connect_direct} 2013-01-14 15:11:50 -05:00
freescale net: fec: fix build error in no MXC platform 2013-03-04 14:12:07 -05:00
fujitsu Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
hp
i825xx Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
ibm net: ehea module param description fix 2013-02-18 12:26:36 -05:00
icplus drivers/net/ethernet/icplus: remove depends on CONFIG_EXPERIMENTAL 2013-01-22 12:01:33 -08:00
intel hlist: drop the node parameter from iterators 2013-02-27 19:10:24 -08:00
marvell Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-02-21 17:40:58 -08:00
mellanox hlist: drop the node parameter from iterators 2013-02-27 19:10:24 -08:00
micrel net: ks8851: convert to threaded IRQ 2013-01-29 13:32:00 -05:00
microchip Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
myricom ethernet: Remove unnecessary alloc/OOM messages, alloc cleanups 2013-02-04 13:22:33 -05:00
natsemi Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
neterion
nuvoton
nvidia Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-01-15 15:05:59 -05:00
nxp net: phy: remove flags argument from phy_{attach, connect, connect_direct} 2013-01-14 15:11:50 -05:00
octeon
oki-semi
packetengines Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
pasemi net/pasemi: Fix missing coding style 2013-02-24 21:22:47 -05:00
qlogic hlist: drop the node parameter from iterators 2013-02-27 19:10:24 -08:00
rdc r6040: check MDIO register busy waiting result 2013-03-06 15:40:53 -05:00
realtek r8169: honor jumbo settings when chipset is requested to start. 2013-02-28 15:37:29 -05:00
renesas ethernet: Remove unnecessary alloc/OOM messages, alloc cleanups 2013-02-04 13:22:33 -05:00
seeq Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
sfc sfc: Fix replacement detection in efx_filter_insert_filter() 2013-03-07 20:22:02 +00:00
sgi
silan Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
sis
smsc drivers: net: Remove remaining alloc/OOM messages 2013-02-08 17:44:39 -05:00
stmicro Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
sun hlist: drop the node parameter from iterators 2013-02-27 19:10:24 -08:00
tehuti
ti drivers: net: ethernet: cpsw: consider number of slaves in interation 2013-02-26 17:26:11 -05:00
tile
toshiba net: phy: remove flags argument from phy_{attach, connect, connect_direct} 2013-01-14 15:11:50 -05:00
tundra
via Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-02-05 14:12:20 -05:00
wiznet
xilinx ethernet: Remove unnecessary alloc/OOM messages, alloc cleanups 2013-02-04 13:22:33 -05:00
xircom
xscale net: phy: remove flags argument from phy_{attach, connect, connect_direct} 2013-01-14 15:11:50 -05:00
dnet.c net: phy: remove flags argument from phy_{attach, connect, connect_direct} 2013-01-14 15:11:50 -05:00
dnet.h
ethoc.c ethoc: Cleanup driver format 2013-01-29 14:07:05 -05:00
fealnx.c
jme.c
jme.h
Kconfig drivers/net: delete old 8 bit ISA Racal ni5010 support. 2013-01-22 10:39:52 -05:00
korina.c
lantiq_etop.c net: phy: remove flags argument from phy_{attach, connect, connect_direct} 2013-01-14 15:11:50 -05:00
Makefile drivers/net: delete old 8 bit ISA Racal ni5010 support. 2013-01-22 10:39:52 -05:00
netx-eth.c
s6gmac.c net: phy: remove flags argument from phy_{attach, connect, connect_direct} 2013-01-14 15:11:50 -05:00