openwrt/target/linux/ramips
DENG Qingfang 6552f31acd 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>
(cherry picked from commit f99c9cd9c4)
2021-04-18 12:05:04 +02:00
..
base-files/etc ramips: remove model name from LED labels 2020-10-02 14:51:57 +02:00
dts ramips: reduce spi-max-frequency for Xiaomi MI Router 4AG 2021-04-18 12:04:38 +02:00
files/drivers ramips: mt7530 swconfig: fix race condition in register access 2021-04-18 12:05:04 +02:00
image ramips: Fix booting on MTC WR1201 2021-04-18 12:04:19 +02:00
mt76x8 ramips: add support for ELECOM WRC-1167FS 2021-02-11 16:37:53 +01:00
mt7620 ramips: correct switch config of Youku yk1 2021-04-02 16:04:00 +02:00
mt7621 ramips: mt7621: enable SX150x driver 2021-02-24 20:23:59 +01:00
patches-5.4 kernel: bump 5.4 to 5.4.108 2021-03-27 16:26:56 +01:00
rt288x ramips: remove set_wifi_led function in 01_leds 2020-10-02 14:51:57 +02:00
rt305x ramips: remove generic profiles 2021-01-27 21:31:20 +01:00
rt3883 ramips: remove generic profiles 2021-01-27 21:31:20 +01:00
Makefile target: use SPDX license identifiers on Makefiles 2021-02-10 15:47:18 +01:00
modules.mk ramips: rename mtk-hsdma to hsdma-mt7621 2021-03-15 10:32:53 -10:00