[net,v1,1/1] net: lan78xx: fix "softirq work is pending" error

Message ID 20240226110820.2113584-1-o.rempel@pengutronix.de
State New
Headers
Series [net,v1,1/1] net: lan78xx: fix "softirq work is pending" error |

Commit Message

Oleksij Rempel Feb. 26, 2024, 11:08 a.m. UTC
  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>
---
 drivers/net/usb/lan78xx.c | 2 ++
 1 file changed, 2 insertions(+)
  

Comments

patchwork-bot+netdevbpf@kernel.org Feb. 28, 2024, 3:20 a.m. UTC | #1
Hello:

This patch was applied to netdev/net.git (main)
by Jakub Kicinski <kuba@kernel.org>:

On Mon, 26 Feb 2024 12:08:20 +0100 you wrote:
> 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>
> 
> [...]

Here is the summary with links:
  - [net,v1,1/1] net: lan78xx: fix "softirq work is pending" error
    https://git.kernel.org/netdev/net/c/e3d5d70cb483

You are awesome, thank you!
  

Patch

diff --git a/drivers/net/usb/lan78xx.c b/drivers/net/usb/lan78xx.c
index 7d7e185d7fae..3ff430198512 100644
--- a/drivers/net/usb/lan78xx.c
+++ b/drivers/net/usb/lan78xx.c
@@ -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;