Subject: Re: [PATCH net-next v3] net: stmmac:fix system hang when setting up tag_8021q VLAN for DSA ports

From: Jakub Kicinski <[email-masked]>
Date: Thu, 13 Apr 2023 22:00:46 -0700

On Fri, 14 Apr 2023 11:07:10 +0800 Yan Wang wrote:
> The system hang because of dsa_tag_8021q_port_setup()->
> 				stmmac_vlan_rx_add_vid().
> 
> I found in stmmac_drv_probe() that cailing pm_runtime_put()
> disabled the clock.
> 
> First, when the kernel is compiled with CONFIG_PM=y,The stmmac's
> resume/suspend is active.
> 
> Secondly,stmmac as DSA master,the dsa_tag_8021q_port_setup() function
> will callback stmmac_vlan_rx_add_vid when DSA dirver starts. However,
> The system is hanged for the stmmac_vlan_rx_add_vid() accesses its
> registers after stmmac's clock is closed.
> 
> I would suggest adding the pm_runtime_resume_and_get() to the
> stmmac_vlan_rx_add_vid().This guarantees that resuming clock output
> while in use.
> 
> Fixes: b3dcb3127786 ("net: stmmac: correct clocks enabled in stmmac_vlan_rx_kill_vid()")
> Signed-off-by: Yan Wang <[email-masked]>

Happy to see you managed to work around the email server problems!

Please make sure to read this doc before posting the next version:
https://www.kernel.org/doc/html/next/process/maintainer-netdev.html