]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
net: lan78xx: fix "softirq work is pending" error
authorOleksij Rempel <o.rempel@pengutronix.de>
Mon, 26 Feb 2024 11:08:20 +0000 (12:08 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 6 Mar 2024 14:48:35 +0000 (14:48 +0000)
[ Upstream commit e3d5d70cb483df8296dd44e9ae3b6355ef86494c ]

Disable BH around the call to napi_schedule() to avoid following
error:
NOHZ tick-stop error: local softirq work is pending, handler #08!!!

Fixes: ec4c7e12396b ("lan78xx: Introduce NAPI polling support")
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Link: https://lore.kernel.org/r/20240226110820.2113584-1-o.rempel@pengutronix.de
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/usb/lan78xx.c

index d86413a0ead4b1cd9ab1cb820c95e12baf896fbf..8b1e1e1c8d5beeb844847af4af356f0a85a553a5 100644 (file)
@@ -1501,7 +1501,9 @@ static int lan78xx_link_reset(struct lan78xx_net *dev)
 
                lan78xx_rx_urb_submit_all(dev);
 
+               local_bh_disable();
                napi_schedule(&dev->napi);
+               local_bh_enable();
        }
 
        return 0;