------------[ cut here ]------------
refcount_t: underflow; use-after-free.
WARNING: CPU: 0 PID: 4800 at lib/refcount.c:28 refcount_warn_saturate+0x14a/0x210 lib/refcount.c:28
Modules linked in:
CPU: 0 UID: 0 PID: 4800 Comm: kworker/0:2 Not tainted 6.11.0-rc1-syzkaller-00154-gc0ecd6388360 #0
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014
Workqueue: events linkwatch_event
RIP: 0010:refcount_warn_saturate+0x14a/0x210 lib/refcount.c:28
Code: ff 89 de e8 b8 54 0c fd 84 db 0f 85 66 ff ff ff e8 0b 5a 0c fd c6 05 83 1e 7b 0b 01 90 48 c7 c7 e0 e6 af 8b e8 b7 0a cf fc 90 <0f> 0b 90 90 e9 43 ff ff ff e8 e8 59 0c fd 0f b6 1d 5e 1e 7b 0b 31
RSP: 0018:ffffc90000007d90 EFLAGS: 00010082
RAX: 0000000000000000 RBX: 0000000000000000 RCX: ffffffff814dc409
RDX: ffff88801e440000 RSI: ffffffff814dc416 RDI: 0000000000000001
RBP: ffff888011d42778 R08: 0000000000000001 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: dffffc0000000000
R13: ffff888011d42778 R14: ffff88805964a400 R15: 0000000000000000
FS: 0000000000000000(0000) GS:ffff88802c000000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 000000002c309ff8 CR3: 000000001c5ea000 CR4: 0000000000350ef0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
__refcount_sub_and_test include/linux/refcount.h:275 [inline]
__refcount_dec_and_test include/linux/refcount.h:307 [inline]
refcount_dec_and_test include/linux/refcount.h:325 [inline]
p9_req_put+0x1f4/0x250 net/9p/client.c:404
req_done+0x1e7/0x2f0 net/9p/trans_virtio.c:147
vring_interrupt drivers/virtio/virtio_ring.c:2595 [inline]
vring_interrupt+0x31b/0x400 drivers/virtio/virtio_ring.c:2570
__handle_irq_event_percpu+0x229/0x7c0 kernel/irq/handle.c:158
handle_irq_event_percpu kernel/irq/handle.c:193 [inline]
handle_irq_event+0xab/0x1e0 kernel/irq/handle.c:210
handle_edge_irq+0x263/0xd10 kernel/irq/chip.c:831
generic_handle_irq_desc include/linux/irqdesc.h:173 [inline]
handle_irq arch/x86/kernel/irq.c:247 [inline]
call_irq_handler arch/x86/kernel/irq.c:259 [inline]
__common_interrupt+0xdf/0x250 arch/x86/kernel/irq.c:285
common_interrupt+0xab/0xd0 arch/x86/kernel/irq.c:278
asm_common_interrupt+0x26/0x40 arch/x86/include/asm/idtentry.h:693
RIP: 0010:lock_acquire+0x1f2/0x560 kernel/locking/lockdep.c:5727
Code: c1 05 0a 45 99 7e 83 f8 01 0f 85 ea 02 00 00 9c 58 f6 c4 02 0f 85 d5 02 00 00 48 85 ed 74 01 fb 48 b8 00 00 00 00 00 fc ff df <48> 01 c3 48 c7 03 00 00 00 00 48 c7 43 08 00 00 00 00 48 8b 84 24
RSP: 0018:ffffc900043bf990 EFLAGS: 00000206
RAX: dffffc0000000000 RBX: 1ffff92000877f34 RCX: 0000000000000001
RDX: 0000000000000001 RSI: ffffffff8b4cd360 RDI: ffffffff8bb04160
RBP: 0000000000000200 R08: 00000000001da588 R09: fffffbfff28e999a
R10: ffffffff9474ccd7 R11: 0000000000000031 R12: 0000000000000001
R13: 0000000000000000 R14: ffff8880592b0908 R15: 0000000000000000
__raw_spin_lock_bh include/linux/spinlock_api_smp.h:126 [inline]
_raw_spin_lock_bh+0x33/0x40 kernel/locking/spinlock.c:178
spin_lock_bh include/linux/spinlock.h:356 [inline]
dev_reset_queue+0xa9/0x1d0 net/sched/sch_generic.c:1306
netdev_for_each_tx_queue include/linux/netdevice.h:2513 [inline]
dev_deactivate_many+0x364/0xb20 net/sched/sch_generic.c:1374
dev_deactivate+0xf9/0x1c0 net/sched/sch_generic.c:1397
linkwatch_do_dev+0x11e/0x160 net/core/link_watch.c:175
__linkwatch_run_queue+0x233/0x690 net/core/link_watch.c:234
linkwatch_event+0x8f/0xc0 net/core/link_watch.c:277
process_one_work+0x958/0x1ad0 kernel/workqueue.c:3231
process_scheduled_works kernel/workqueue.c:3312 [inline]
worker_thread+0x6c8/0xf20 kernel/workqueue.c:3390
kthread+0x2c1/0x3a0 kernel/kthread.c:389
ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:147
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
----------------
Code disassembly (best guess):
0: c1 05 0a 45 99 7e 83 roll $0x83,0x7e99450a(%rip) # 0x7e994511
7: f8 clc
8: 01 0f add %ecx,(%rdi)
a: 85 ea test %ebp,%edx
c: 02 00 add (%rax),%al
e: 00 9c 58 f6 c4 02 0f add %bl,0xf02c4f6(%rax,%rbx,2)
15: 85 d5 test %edx,%ebp
17: 02 00 add (%rax),%al
19: 00 48 85 add %cl,-0x7b(%rax)
1c: ed in (%dx),%eax
1d: 74 01 je 0x20
1f: fb sti
20: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax
27: fc ff df
* 2a: 48 01 c3 add %rax,%rbx <-- trapping instruction
2d: 48 c7 03 00 00 00 00 movq $0x0,(%rbx)
34: 48 c7 43 08 00 00 00 movq $0x0,0x8(%rbx)
3b: 00
3c: 48 rex.W
3d: 8b .byte 0x8b
3e: 84 .byte 0x84
3f: 24 .byte 0x24