Re: [syzbot] [virt?] INFO: trying to register non-static key in stats_request (2)

"David Hildenbrand (Arm)" <[email protected]>
Newsgroups dev.linux.lists.virtualization,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
On 8/22/26 02:11, syzbot wrote:
> Hello,
> 
> syzbot found the following issue on:
> 
> HEAD commit:    8d3ae59288f1 Linux 7.2
> git tree:       upstream
> console output: https://syzkaller.appspot.com/x/log.txt?x=10240679580000
> kernel config:  https://syzkaller.appspot.com/x/.config?x=4c9eb8e593cf8c5c
> dashboard link: https://syzkaller.appspot.com/bug?extid=13df72e0dc4be5c62215
> compiler:       Debian clang version 22.1.8 (++20260613092233+e80beda6e255-1~exp1~20260613092250.77), Debian LLD 22.1.8
> 

virtio-balloon in an RT kernel/environment, unlikely in pactice ... :)

> Unfortunately, I don't have any reproducer for this issue yet.
> 
> Downloadable assets:
> disk image: https://storage.googleapis.com/syzbot-assets/cd49b631c498/disk-8d3ae592.raw.xz
> vmlinux: https://storage.googleapis.com/syzbot-assets/05d3ad83c130/vmlinux-8d3ae592.xz
> kernel image: https://storage.googleapis.com/syzbot-assets/3a2efa4a6769/bzImage-8d3ae592.xz
> 
> IMPORTANT: if you fix the issue, please add the following tag to the commit:
> Reported-by: [email protected]
> 
> INFO: trying to register non-static key.
> The code is fine but needs lockdep annotation, or maybe
> you didn't initialize this object before use?
> turning off the locking correctness validator.
> CPU: 0 UID: 0 PID: 20235 Comm: irq/10-virtio2 Tainted: G             L      syzkaller #0 PREEMPT_{RT,(full)} 
> Tainted: [L]=SOFTLOCKUP
> Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
> Call Trace:
>  <TASK>
>  dump_stack_lvl+0xe8/0x150 lib/dump_stack.c:120
>  assign_lock_key+0x133/0x150 kernel/locking/lockdep.c:984
>  register_lock_class+0xcc/0x2e0 kernel/locking/lockdep.c:1299
>  __lock_acquire+0xab/0x2ce0 kernel/locking/lockdep.c:5112
>  lock_acquire+0x106/0x350 kernel/locking/lockdep.c:5868
>  rt_spin_lock+0x83/0x400 kernel/locking/spinlock_rt.c:56
>  spin_lock include/linux/spinlock_rt.h:45 [inline]
>  start_wakeup_event drivers/virtio/virtio_balloon.c:150 [inline]
>  stats_request+0xa5/0x1f0 drivers/virtio/virtio_balloon.c:435


I don't really understand what's happening here, Is the register_lock_class()
trying to reguster a non-static key?

I don't immediately see how virtio-balloon is doing something odd here, all it
does is a spin_lock_irqsave(&vb->wakeup_lock, flags), that was earlier
initialized with spin_lock_init(&vb->wakeup_lock), before the device was ready.

-- 
Cheers,

David
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.