]> git.baikalelectronics.ru Git - kernel.git/commit
net: dsa: Do not clobber PHY link outside of state machine
authorFlorian Fainelli <f.fainelli@gmail.com>
Mon, 6 Feb 2017 23:55:23 +0000 (15:55 -0800)
committerDavid S. Miller <davem@davemloft.net>
Tue, 7 Feb 2017 18:48:22 +0000 (13:48 -0500)
commite9262b60ffee1f63a3f80a06b9a0640d775704e4
treecf8ebddef2228a4a1571c66faecf00d2eb238d7b
parent921350a0bfa743ca5dad75829cb04ff750e701fc
net: dsa: Do not clobber PHY link outside of state machine

Calling phy_read_status() means that we may call into
genphy_read_status() which in turn will use genphy_update_link() which
can make changes to phydev->link outside of the state machine's state
transitions. This is an invalid behavior that is now caught as of
fb35200345ae ("phy state machine: failsafe leave invalid RUNNING state")

Reported-by: Zefir Kurtisi <zefir.kurtisi@neratec.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/dsa/slave.c