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

Reply via email to