------------[ cut here ]------------ workqueue: cannot queue hci_cmd_timeout on wq hci3 WARNING: CPU: 1 PID: 21338 at kernel/workqueue.c:2255 __queue_work+0xd03/0x1160 kernel/workqueue.c:2254 Modules linked in: CPU: 1 UID: 0 PID: 21338 Comm: vhost-21337 Not tainted syzkaller #0 PREEMPT(full) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 RIP: 0010:__queue_work+0xd03/0x1160 kernel/workqueue.c:2254 Code: 00 00 fc ff df 48 89 fa 48 c1 ea 03 80 3c 02 00 0f 85 4b 04 00 00 48 8b 75 18 4c 89 fa 48 c7 c7 a0 03 ac 8b e8 be 1e f7 ff 90 <0f> 0b 90 90 e9 2f f7 ff ff e8 ff 79 38 00 90 0f 0b 90 e9 b4 f5 ff RSP: 0018:ffffc900006a0be8 EFLAGS: 00010082 RAX: 0000000000000000 RBX: 0000000000000000 RCX: ffffffff817a4388 RDX: ffff88802a30c880 RSI: ffffffff817a4395 RDI: 0000000000000001 RBP: ffff88803f1ec970 R08: 0000000000000001 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000000 R12: 1ffff920000d418f R13: 0000000080000100 R14: ffffffff81833490 R15: ffff888031d59178 FS: 00007f2b18d3c6c0(0000) GS:ffff8880d67b2000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000000000000 CR3: 000000003e115000 CR4: 0000000000352ef0 Call Trace: call_timer_fn+0x197/0x620 kernel/time/timer.c:1747 expire_timers kernel/time/timer.c:1793 [inline] __run_timers+0x569/0x960 kernel/time/timer.c:2372 __run_timer_base kernel/time/timer.c:2384 [inline] __run_timer_base kernel/time/timer.c:2376 [inline] run_timer_base+0x114/0x190 kernel/time/timer.c:2393 run_timer_softirq+0x1a/0x40 kernel/time/timer.c:2403 handle_softirqs+0x219/0x8e0 kernel/softirq.c:579 __do_softirq kernel/softirq.c:613 [inline] invoke_softirq kernel/softirq.c:453 [inline] __irq_exit_rcu+0x109/0x170 kernel/softirq.c:680 irq_exit_rcu+0x9/0x30 kernel/softirq.c:696 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1050 [inline] sysvec_apic_timer_interrupt+0xa4/0xc0 arch/x86/kernel/apic/apic.c:1050 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702 RIP: 0010:lock_is_held_type+0x107/0x150 kernel/locking/lockdep.c:5945 Code: 00 00 b8 ff ff ff ff 65 0f c1 05 dc 71 42 08 83 f8 01 75 2d 9c 58 f6 c4 02 75 43 48 f7 04 24 00 02 00 00 74 01 fb 48 83 c4 08 <44> 89 e8 5b 5d 41 5c 41 5d 41 5e 41 5f e9 47 00 03 00 45 31 ed eb RSP: 0018:ffffc9000dfcfd18 EFLAGS: 00000286 RAX: 0000000000000046 RBX: 1ffff92001bf9fac RCX: 0000000000000001 RDX: 0000000000000000 RSI: ffffffff8de2d6e8 RDI: ffffffff8c163300 RBP: ffffffff8e5c1540 R08: 0000000000000001 R09: 0000000000000001 R10: ffffffff90ab7297 R11: 0000000000000000 R12: ffff88802a30c880 R13: 0000000000000000 R14: 00000000ffffffff R15: 0000000000000000 lock_is_held include/linux/lockdep.h:249 [inline] __might_resched+0x473/0x5e0 kernel/sched/core.c:8919 vhost_run_work_list+0x1a3/0x230 drivers/vhost/vhost.c:456 vhost_task_fn+0x162/0x460 kernel/vhost_task.c:49 ret_from_fork+0x56a/0x730 arch/x86/kernel/process.c:148 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245 ---------------- Code disassembly (best guess): 0: 00 00 add %al,(%rax) 2: b8 ff ff ff ff mov $0xffffffff,%eax 7: 65 0f c1 05 dc 71 42 xadd %eax,%gs:0x84271dc(%rip) # 0x84271eb e: 08 f: 83 f8 01 cmp $0x1,%eax 12: 75 2d jne 0x41 14: 9c pushf 15: 58 pop %rax 16: f6 c4 02 test $0x2,%ah 19: 75 43 jne 0x5e 1b: 48 f7 04 24 00 02 00 testq $0x200,(%rsp) 22: 00 23: 74 01 je 0x26 25: fb sti 26: 48 83 c4 08 add $0x8,%rsp * 2a: 44 89 e8 mov %r13d,%eax <-- trapping instruction 2d: 5b pop %rbx 2e: 5d pop %rbp 2f: 41 5c pop %r12 31: 41 5d pop %r13 33: 41 5e pop %r14 35: 41 5f pop %r15 37: e9 47 00 03 00 jmp 0x30083 3c: 45 31 ed xor %r13d,%r13d 3f: eb .byte 0xeb