Message ID | 20241101-stmmac-unbalanced-wake-single-fix-v1-1-5952524c97f0@collabora.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | net: stmmac: Fix unbalanced IRQ wake disable warning on single irq case | expand |
On Fri, Nov 01, 2024 at 05:17:29PM -0400, Nícolas F. R. A. Prado wrote: > Commit a23aa0404218 ("net: stmmac: ethtool: Fixed calltrace caused by > unbalanced disable_irq_wake calls") introduced checks to prevent > unbalanced enable and disable IRQ wake calls. However it only > initialized the auxiliary variable on one of the paths, > stmmac_request_irq_multi_msi(), missing the other, > stmmac_request_irq_single(). > > Add the same initialization on stmmac_request_irq_single() to prevent > "Unbalanced IRQ <x> wake disable" warnings from being printed the first > time disable_irq_wake() is called on platforms that run on that code > path. > > Fixes: a23aa0404218 ("net: stmmac: ethtool: Fixed calltrace caused by unbalanced disable_irq_wake calls") > Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com> Reviewed-by: Simon Horman <horms@kernel.org>
Hello: This patch was applied to netdev/net.git (main) by Paolo Abeni <pabeni@redhat.com>: On Fri, 01 Nov 2024 17:17:29 -0400 you wrote: > Commit a23aa0404218 ("net: stmmac: ethtool: Fixed calltrace caused by > unbalanced disable_irq_wake calls") introduced checks to prevent > unbalanced enable and disable IRQ wake calls. However it only > initialized the auxiliary variable on one of the paths, > stmmac_request_irq_multi_msi(), missing the other, > stmmac_request_irq_single(). > > [...] Here is the summary with links: - net: stmmac: Fix unbalanced IRQ wake disable warning on single irq case https://git.kernel.org/netdev/net/c/25d70702142a You are awesome, thank you!
diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c index 208dbc68aaf9d4a650f167a76d1ef223d5eb6aec..7bf275f127c9d750418db8b4fdb6e650a53dc644 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c @@ -3780,6 +3780,7 @@ static int stmmac_request_irq_single(struct net_device *dev) /* Request the Wake IRQ in case of another line * is used for WoL */ + priv->wol_irq_disabled = true; if (priv->wol_irq > 0 && priv->wol_irq != dev->irq) { ret = request_irq(priv->wol_irq, stmmac_interrupt, IRQF_SHARED, dev->name, dev);
Commit a23aa0404218 ("net: stmmac: ethtool: Fixed calltrace caused by unbalanced disable_irq_wake calls") introduced checks to prevent unbalanced enable and disable IRQ wake calls. However it only initialized the auxiliary variable on one of the paths, stmmac_request_irq_multi_msi(), missing the other, stmmac_request_irq_single(). Add the same initialization on stmmac_request_irq_single() to prevent "Unbalanced IRQ <x> wake disable" warnings from being printed the first time disable_irq_wake() is called on platforms that run on that code path. Fixes: a23aa0404218 ("net: stmmac: ethtool: Fixed calltrace caused by unbalanced disable_irq_wake calls") Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com> --- drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 1 + 1 file changed, 1 insertion(+) --- base-commit: c88416ba074a8913cf6d61b789dd834bbca6681c change-id: 20241101-stmmac-unbalanced-wake-single-fix-3dab334ab6eb Best regards,