Loading
r8169: fix deadlock on RTL8125 in jumbo mtu mode
stable inclusion from stable-v5.10.203 commit 2325d3b6b10f17b99d99e66692d2092d66c3eec4 category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I9GXII Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=2325d3b6b10f17b99d99e66692d2092d66c3eec4 -------------------------------- [ Upstream commit 59d395ed606d8df14615712b0cdcdadb2d962175 ] The original change results in a deadlock if jumbo mtu mode is used. Reason is that the phydev lock is held when rtl_reset_work() is called here, and rtl_jumbo_config() calls phy_start_aneg() which also tries to acquire the phydev lock. Fix this by calling rtl_reset_work() asynchronously. Fixes: 621735f59064 ("r8169: fix rare issue with broken rx after link-down on RTL8125") Reported-by:Ian Chen <free122448@hotmail.com> Tested-by:
Ian Chen <free122448@hotmail.com> Cc: stable@vger.kernel.org Signed-off-by:
Heiner Kallweit <hkallweit1@gmail.com> Link: https://lore.kernel.org/r/caf6a487-ef8c-4570-88f9-f47a659faf33@gmail.com Signed-off-by:
Paolo Abeni <pabeni@redhat.com> Signed-off-by:
Sasha Levin <sashal@kernel.org> Signed-off-by:
sanglipeng <sanglipeng1@jd.com>