[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240506181020.292b25f0@kernel.org>
Date: Mon, 6 May 2024 18:10:20 -0700
From: Jakub Kicinski <kuba@...nel.org>
To: Erhard Furtner <erhard_f@...lbox.org>
Cc: netdev@...r.kernel.org, linuxppc-dev@...ts.ozlabs.org,
linux-kernel@...r.kernel.org
Subject: Re: WARNING: CPU: 1 PID: 1 at net/core/netpoll.c:370
netpoll_send_skb+0x1fc/0x20c at boot when netconsole is enabled (kernel
v6.9-rc5, v6.8.7, sungem, PowerMac G4 DP)
On Tue, 7 May 2024 02:42:58 +0200 Erhard Furtner wrote:
> And indeed without gem_poll_controller() I don't hit the "WARNING: CPU: 1 PID: 1 at net/core/netpoll.c:370 netpoll_send_skb+0x1fc/0x20c" and "WARNING: CPU: 1 PID: 1 at kernel/locking/irqflag-debug.c:10 warn_bogus_irq_restore+0x30/0x44" or the according lockdep bug at boot!
>
> Re-booted the machine about 20 times without anything suspicious showing up in the dmesg. With the unpatched kernel I got the WARNING at the 2nd reboot.
Excellent! Do you want to submit that as an official patch?
The explanation is that we can't call disable_irq() from atomic
context (which which netpoll runs). But the callback is no longer
necessary as we can depend on NAPI to do the polling these days.
> What I still get with 'modprobe -v dev_addr_lists_test', even with gem_poll_controller() removed is:
>
> [...]
> KTAP version 1
> 1..1
> KTAP version 1
> # Subtest: dev-addr-list-test
> # module: dev_addr_lists_test
> 1..6
>
> ====================================
> WARNING: kunit_try_catch/1770 still has locks held!
> 6.9.0-rc6-PMacG4-dirty #5 Tainted: G W N
> ------------------------------------
> 1 lock held by kunit_try_catch/1770:
> #0: c0dbfce4 (rtnl_mutex){....}-{3:3}, at: dev_addr_test_init+0xbc/0xc8 [dev_addr_lists_test]
I think that's fixed in net-next.
Powered by blists - more mailing lists