openwrt/target/linux
HsiuWen Yen fe7d965ea9 ramips: fix two-way hash and auto ageout on MT7621
Current code directly writes the FOE entry to hash_val+1 position
when hash collision occurs. However, it is found that this behavior
will cause the cache and the hardware FOE table to be inconsistent.

For example, there are three flows, and their hashed values are all
equal to 100. The first flow is written to the position of 100. The
second flow is written to the position of 100+1. Then, the logic of
the current code will also write the third flow to 100+1.

At this time, the cache has flow 1 and 2; and the hardware FOE table
has flow 1 and 3, where these two parts store different contents.
So it is necessary to check whether the hash_val+1 is also occupied
before writing. If hash_val+1 is also occupied, we won’t bind th
third flow to the FOE table.

Addition to that, we also cancel the processing of foe_entry removal
because the hardware has auto age-out ability. The hardware will
periodically iterate through the FOE table to find out the time-out
entry and set it as INVALID.

Signed-off-by: HsiuWen Yen <y.hsiuwen@gmail.com>
2019-01-23 09:27:30 +01:00
..
adm5120 kernel: Replace ledtrig-netdev with upstream backport 2018-12-15 12:50:06 +01:00
adm8668 treewide: use wpad-basic for not small flash targets 2018-10-16 15:07:41 +01:00
apm821xx kernel: bump 4.19 to 4.19.16 2019-01-17 03:04:13 +02:00
ar7 treewide: use wpad-basic for not small flash targets 2018-10-16 15:07:41 +01:00
ar71xx ar71xx: ag71xx: preserve port mirror flags during swconfig apply 2019-01-22 09:05:59 +01:00
arc770 treewide: use wpad-basic for not small flash targets 2018-10-16 15:07:41 +01:00
archs38 treewide: use wpad-basic for not small flash targets 2018-10-16 15:07:41 +01:00
armvirt kernel: bump 4.14 to 4.14.77 2018-10-19 10:01:57 +02:00
at91 kernel: Deactivate CONFIG_COMPAT_BRK 2018-12-26 17:32:48 +01:00
ath25 kernel: bump 4.14 to 4.14.79 2018-11-05 16:00:00 +01:00
ath79 ath79: fix port order for dir 825-c1 and 835-a1 2019-01-22 09:05:59 +01:00
au1000 treewide: use wpad-basic for not small flash targets 2018-10-16 15:07:41 +01:00
bcm53xx bcm53xx: add support for Phicomm K3 2019-01-20 23:34:44 +01:00
brcm47xx kernel: bump 4.19 to 4.19.16 2019-01-17 03:04:13 +02:00
brcm63xx brcm63xx: remove broken DSP platform device code 2018-12-30 13:22:13 +01:00
brcm2708 kernel: bump 4.9 to 4.9.150 2019-01-16 12:56:30 +01:00
cns3xxx kernel: bump 4.14 to 4.14.93 2019-01-14 02:20:40 +02:00
gemini kernel: Deactivate CONFIG_COMPAT_BRK 2018-12-26 17:32:48 +01:00
generic kernel: N_BADCLASS: fix macro to actually work - class e support 2019-01-19 20:45:49 +00:00
imx6 imx6: image: ventana: Add missing BOOT_SCRIPT variable 2018-11-25 19:23:03 +01:00
ipq40xx kernel: bump 4.19 to 4.19.16 2019-01-17 03:04:13 +02:00
ipq806x kernel: bump 4.14 to 4.14.91 2019-01-07 17:09:06 +01:00
ixp4xx treewide: use wpad-basic for not small flash targets 2018-10-16 15:07:41 +01:00
kirkwood treewide: use wpad-basic for not small flash targets 2018-10-16 15:07:41 +01:00
lantiq treewide: dts: Remove default-state=off property from all gpio LED nodes 2018-12-17 08:16:28 +01:00
layerscape kernel: bump 4.14 to 4.14.91 2019-01-07 17:09:06 +01:00
malta malta: Add support for kernel 4.19 2019-01-13 16:31:40 +01:00
mcs814x kernel: bump 3.18 to 3.18.119 2018-08-20 13:03:23 +02:00
mediatek kernel: bump 4.14 to 4.14.93 2019-01-14 02:20:40 +02:00
mpc85xx kernel: bump 4.19 to 4.19.16 2019-01-17 03:04:13 +02:00
mvebu kernel: bump 4.14 to 4.14.81 2018-11-14 16:27:43 +01:00
mxs mxs: use generic sysinfo board detection 2018-11-28 23:37:29 +01:00
octeon octeon: fix typo in platform.sh 2019-01-12 19:40:13 +01:00
octeontx kernel: enable memory compaction 2018-10-09 14:29:55 +02:00
omap kernel: bump 4.14 to 4.14.77 2018-10-19 10:01:57 +02:00
omap24xx omap24xx: remove referece to not existing kmod-usb-musb-tusb6010 2018-01-15 13:13:34 +01:00
orion treewide: use wpad-basic for not small flash targets 2018-10-16 15:07:41 +01:00
oxnas kernel: Deactivate CONFIG_COMPAT_BRK 2018-12-26 17:32:48 +01:00
pistachio kernel: bump 4.14 to 4.14.91 2019-01-07 17:09:06 +01:00
ppc40x kernel: only optimized for size if small_flash 2018-07-12 18:15:32 +02:00
ppc44x kernel: only optimized for size if small_flash 2018-07-12 18:15:32 +02:00
ramips ramips: fix two-way hash and auto ageout on MT7621 2019-01-23 09:27:30 +01:00
rb532 kernel: bump 4.14 to 4.14.86 2018-12-10 11:48:44 +01:00
samsung kernel: Deactivate CONFIG_COMPAT_BRK 2018-12-26 17:32:48 +01:00
sunxi sunxi: Add support for kernel 4.19 2019-01-13 17:35:14 +01:00
uml treewide: use wpad-basic for not small flash targets 2018-10-16 15:07:41 +01:00
x86 x86: Add support for kernel 4.19 2019-01-12 22:40:36 +01:00
xburst kernel: bump 3.18 to 3.18.119 2018-08-20 13:03:23 +02:00
zynq kernel: Deactivate CONFIG_COMPAT_BRK 2018-12-26 17:32:48 +01:00
Makefile