difos/target/linux
DENG Qingfang f99c9cd9c4 ramips: mt7530 swconfig: fix race condition in register access
The mt7530_{r,w}32 operation over MDIO uses 3 mdiobus operations and
does not hold a lock, which causes a race condition when multiple
threads try to access a register, they may get unexpected results.

To avoid this, handle the MDIO lock manually, and use the unlocked
__mdiobus_{read,write} in the critical section.

This fixes the "Ghost VLAN" artifact[1] in MT7530/7621 when the VLAN
operation and the swconfig LED link status poll race between each other.

[1] https://forum.openwrt.org/t/mysterious-vlan-ids-on-mt7621-device/64495

Signed-off-by: DENG Qingfang <dqfext@gmail.com>
2021-04-15 00:00:54 +08:00
..
apm821xx kernel: bump 5.10 to 5.10.24 2021-03-24 11:36:31 +00:00
arc770 treewide: remove execute bit and shebang from board.d files 2021-03-06 11:30:06 +01:00
archs38 archs38: Add CONFIG_HZ=100 2021-03-19 18:00:22 +01:00
armvirt armvirt: add 5.10 testing kernel 2021-04-03 18:56:02 +02:00
at91 treewide: make AddDepends/usb-serial selective 2021-03-06 12:38:38 +01:00
ath25 treewide: remove execute bit and shebang from board.d files 2021-03-06 11:30:06 +01:00
ath79 ath79: add missing patch for kernel 5.10 2021-04-13 00:40:38 +02:00
bcm27xx kernel: bump 5.4 to 5.4.108 2021-03-27 16:39:31 +01:00
bcm47xx bcm47xx: make WGT634U NVRAM patch apply again 2021-03-12 21:09:11 +01:00
bcm53xx bcm53xx: add pending TRX patch for "firmware" partition 2021-04-14 08:27:30 +02:00
bcm63xx kernel: bump 5.10 to 5.10.26 2021-03-26 08:19:11 +00:00
bcm4908 bcm4908: enable Netgear R8000P bootloader image 2021-04-08 10:50:59 +02:00
bmips kernel: bump 5.10 to 5.10.27 2021-04-03 21:07:22 +01:00
gemini kernel: Move CONFIG_USERIO to generic config 2021-03-27 14:34:22 +01:00
generic lantiq: add Linux 5.10 support as testing kernel 2021-04-12 23:23:09 +02:00
imx6 kernel: move some disabled symbols to generic 2021-03-19 00:59:22 +01:00
ipq40xx ipq40xx: add MikroTik hAP ac2 support 2021-04-05 04:13:28 +02:00
ipq806x kernel: bump 5.4 to 5.4.109 2021-04-02 16:45:28 +02:00
ipq807x kernel: move some disabled symbols to generic 2021-03-19 00:59:22 +01:00
kirkwood kernel: backport 5.13 mtd partitioning changes 2021-03-29 08:46:17 +02:00
lantiq lantiq: add Linux 5.10 support as testing kernel 2021-04-12 23:23:09 +02:00
layerscape kernel: bump 5.4 to 5.4.110 2021-04-10 20:27:40 +02:00
malta kernel: Move CONFIG_USERIO to generic config 2021-03-27 14:34:22 +01:00
mediatek mediatek: mt7622: add spi-nand support for bananapi bpi-r64 2021-04-11 20:19:44 +01:00
mpc85xx treewide: remove execute bit and shebang from board.d files 2021-03-06 11:30:06 +01:00
mvebu kernel: backport 5.13 mtd partitioning changes 2021-03-29 08:46:17 +02:00
mxs mxs: add support for 5.10 as testing kernel 2021-04-11 19:14:05 +02:00
octeon kernel: move some disabled symbols to generic 2021-03-19 00:59:22 +01:00
octeontx kernel: move some disabled symbols to generic 2021-03-19 00:59:22 +01:00
omap kernel: Move CONFIG_USERIO to generic config 2021-03-27 14:34:22 +01:00
oxnas kernel: Move CONFIG_USERIO to generic config 2021-03-27 14:34:22 +01:00
pistachio kernel: add pending mtd patches adding NVMEM support 2021-03-12 18:49:46 +01:00
ramips ramips: mt7530 swconfig: fix race condition in register access 2021-04-15 00:00:54 +08:00
realtek realtek: allow writing to "u-boot-env2" 2021-04-08 09:20:59 +02:00
rockchip kernel: bump 5.10 to 5.10.27 2021-04-03 21:07:22 +01:00
sunxi sunxi: add support for Banana Pi M2 Berry 2021-04-12 14:02:02 +02:00
tegra kernel: Move CONFIG_USERIO to generic config 2021-03-27 14:34:22 +01:00
uml target: use SPDX license identifiers on Makefiles 2021-02-10 15:47:18 +01:00
x86 kernel: Move CONFIG_USERIO to generic config 2021-03-27 14:34:22 +01:00
zynq kernel: Move CONFIG_USERIO to generic config 2021-03-27 14:34:22 +01:00
Makefile target: use SPDX license identifiers on Makefiles 2021-02-10 15:47:18 +01:00