netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] driver: net: ethernet: mtk_star_emac: fix suspend/resume issue
@ 2025-05-28  7:53 Macpaul Lin
  2025-05-29 10:30 ` patchwork-bot+netdevbpf
  0 siblings, 1 reply; 2+ messages in thread
From: Macpaul Lin @ 2025-05-28  7:53 UTC (permalink / raw)
  To: Felix Fietkau, Sean Wang, Lorenzo Bianconi, Andrew Lunn,
	David S . Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
	Matthias Brugger, AngeloGioacchino Del Regno, Bartosz Golaszewski,
	netdev, linux-kernel, linux-arm-kernel, linux-mediatek
  Cc: Bear Wang, Pablo Sun, Ramax Lo, Macpaul Lin, Macpaul Lin, stable,
	MediaTek Chromebook Upstream, Yanqing Wang, Biao Huang

From: Yanqing Wang <ot_yanqing.wang@mediatek.com>

Identify the cause of the suspend/resume hang: netif_carrier_off()
is called during link state changes and becomes stuck while
executing linkwatch_work().

To resolve this issue, call netif_device_detach() during the Ethernet
suspend process to temporarily detach the network device from the
kernel and prevent the suspend/resume hang.

Fixes: 8c7bd5a454ff ("net: ethernet: mtk-star-emac: new driver")
Signed-off-by: Yanqing Wang <ot_yanqing.wang@mediatek.com>
Signed-off-by: Macpaul Lin <macpaul.lin@mediatek.com>
Signed-off-by: Biao Huang <biao.huang@mediatek.com>
---
 drivers/net/ethernet/mediatek/mtk_star_emac.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/net/ethernet/mediatek/mtk_star_emac.c b/drivers/net/ethernet/mediatek/mtk_star_emac.c
index b175119a6a7d..b83886a41121 100644
--- a/drivers/net/ethernet/mediatek/mtk_star_emac.c
+++ b/drivers/net/ethernet/mediatek/mtk_star_emac.c
@@ -1463,6 +1463,8 @@ static __maybe_unused int mtk_star_suspend(struct device *dev)
 	if (netif_running(ndev))
 		mtk_star_disable(ndev);
 
+	netif_device_detach(ndev);
+
 	clk_bulk_disable_unprepare(MTK_STAR_NCLKS, priv->clks);
 
 	return 0;
@@ -1487,6 +1489,8 @@ static __maybe_unused int mtk_star_resume(struct device *dev)
 			clk_bulk_disable_unprepare(MTK_STAR_NCLKS, priv->clks);
 	}
 
+	netif_device_attach(ndev);
+
 	return ret;
 }
 
-- 
2.45.2


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] driver: net: ethernet: mtk_star_emac: fix suspend/resume issue
  2025-05-28  7:53 [PATCH] driver: net: ethernet: mtk_star_emac: fix suspend/resume issue Macpaul Lin
@ 2025-05-29 10:30 ` patchwork-bot+netdevbpf
  0 siblings, 0 replies; 2+ messages in thread
From: patchwork-bot+netdevbpf @ 2025-05-29 10:30 UTC (permalink / raw)
  To: Macpaul Lin
  Cc: nbd, sean.wang, lorenzo, andrew+netdev, davem, edumazet, kuba,
	pabeni, matthias.bgg, angelogioacchino.delregno, brgl, netdev,
	linux-kernel, linux-arm-kernel, linux-mediatek, bear.wang,
	pablo.sun, ramax.lo, macpaul, stable,
	Project_Global_Chrome_Upstream_Group, ot_yanqing.wang, biao.huang

Hello:

This patch was applied to netdev/net.git (main)
by Paolo Abeni <pabeni@redhat.com>:

On Wed, 28 May 2025 15:53:51 +0800 you wrote:
> From: Yanqing Wang <ot_yanqing.wang@mediatek.com>
> 
> Identify the cause of the suspend/resume hang: netif_carrier_off()
> is called during link state changes and becomes stuck while
> executing linkwatch_work().
> 
> To resolve this issue, call netif_device_detach() during the Ethernet
> suspend process to temporarily detach the network device from the
> kernel and prevent the suspend/resume hang.
> 
> [...]

Here is the summary with links:
  - driver: net: ethernet: mtk_star_emac: fix suspend/resume issue
    https://git.kernel.org/netdev/net/c/ba99c627aac8

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2025-05-29 10:29 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-28  7:53 [PATCH] driver: net: ethernet: mtk_star_emac: fix suspend/resume issue Macpaul Lin
2025-05-29 10:30 ` patchwork-bot+netdevbpf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).