]> git.baikalelectronics.ru Git - kernel.git/commit
lan743x: fix deadlock in lan743x_phy_link_status_change()
authorHeiner Kallweit <hkallweit1@gmail.com>
Wed, 24 Nov 2021 07:16:25 +0000 (08:16 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 1 Dec 2021 08:04:52 +0000 (09:04 +0100)
commit56684447a59c988dbb58228605c6354a87d325ab
treea829c95688b2e8fdb990442343ba3109c2b0a639
parent7daca63e14a37078f65837036a457eccaff939b7
lan743x: fix deadlock in lan743x_phy_link_status_change()

[ Upstream commit f55481516686b88e336effa122c2661ec0456979 ]

Usage of phy_ethtool_get_link_ksettings() in the link status change
handler isn't needed, and in combination with the referenced change
it results in a deadlock. Simply remove the call and replace it with
direct access to phydev->speed. The duplex argument of
lan743x_phy_update_flowcontrol() isn't used and can be removed.

Fixes: 8f5afb6597b3 ("phy: phy_ethtool_ksettings_get: Lock the phy for consistency")
Reported-by: Alessandro B Maurici <abmaurici@gmail.com>
Tested-by: Alessandro B Maurici <abmaurici@gmail.com>
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://lore.kernel.org/r/40e27f76-0ba3-dcef-ee32-a78b9df38b0f@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/microchip/lan743x_main.c