------------[ cut here ]------------ workqueue: cannot queue hci_cmd_timeout on wq hci8 WARNING: kernel/workqueue.c:2251 at __queue_work+0xcbb/0x10f0 kernel/workqueue.c:2250, CPU#1: syz.8.6194/26004 Modules linked in: CPU: 1 UID: 0 PID: 26004 Comm: syz.8.6194 Tainted: G L syzkaller #0 PREEMPT(full) Tainted: [L]=SOFTLOCKUP Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 RIP: 0010:__queue_work+0xcbf/0x10f0 kernel/workqueue.c:2250 Code: 00 00 00 fc ff df 49 8d 94 24 78 01 00 00 48 89 f9 48 c1 e9 03 80 3c 01 00 0f 85 15 04 00 00 48 8d 3d 85 2a ec 0e 48 8b 75 18 <67> 48 0f b9 3a e9 77 f7 ff ff e8 d2 92 38 00 90 0f 0b 90 e9 ff f5 RSP: 0018:ffffc900006a0bf0 EFLAGS: 00010046 RAX: dffffc0000000000 RBX: 0000000000000100 RCX: 1ffff11002798151 RDX: ffff88814b534178 RSI: ffffffff8a726700 RDI: ffffffff90badcc0 RBP: ffff888013cc0a70 R08: 0000000000000005 R09: 0000000000000000 R10: 0000000000000100 R11: 0000000000000000 R12: ffff88814b534000 R13: 1ffff920000d418f R14: ffffffff81cec340 R15: 0000000000000001 FS: 000055555d888500(0000) GS:ffff8880d66b3000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f6ad374da08 CR3: 0000000033a0a000 CR4: 0000000000352ef0 DR0: 0000000000000007 DR1: 0000000000000005 DR2: 0000000000000006 DR3: 0000000000007fff DR6: 00000000ffff0ff0 DR7: 0000000000000400 Call Trace: call_timer_fn+0x19a/0x590 kernel/time/timer.c:1748 expire_timers kernel/time/timer.c:1794 [inline] __run_timers+0x570/0xac0 kernel/time/timer.c:2373 __run_timer_base kernel/time/timer.c:2385 [inline] __run_timer_base kernel/time/timer.c:2377 [inline] run_timer_base+0x114/0x190 kernel/time/timer.c:2394 run_timer_softirq+0x1a/0x50 kernel/time/timer.c:2404 handle_softirqs+0x1ea/0x910 kernel/softirq.c:622 __do_softirq kernel/softirq.c:656 [inline] invoke_softirq kernel/softirq.c:496 [inline] __irq_exit_rcu+0xef/0x150 kernel/softirq.c:723 irq_exit_rcu+0x9/0x30 kernel/softirq.c:739 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1056 [inline] sysvec_apic_timer_interrupt+0xa3/0xc0 arch/x86/kernel/apic/apic.c:1056 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:697 RIP: 0010:lockdep_unregister_key+0x12b/0x1d0 kernel/locking/lockdep.c:6616 Code: e8 da dd ff ff 48 83 2d da 64 23 14 01 89 c3 e8 2b e0 ff ff 9c 58 f6 c4 02 0f 85 8a 00 00 00 f7 c5 00 02 00 00 74 01 fb 84 db <75> 40 5b 5d 41 5c e9 4a 84 09 00 9c 58 f6 c4 02 0f 84 16 ff ff ff RSP: 0018:ffffc9000daafa60 EFLAGS: 00000246 RAX: 0000000000000046 RBX: 0000000000000000 RCX: 0000000000000001 RDX: 0000000000000000 RSI: ffffffff8dd42eb7 RDI: ffffffff8bfa92a0 RBP: 0000000000000246 R08: 0000000000012c38 R09: ffffffff96090390 R10: 0000000000000200 R11: 0000000000000000 R12: ffffffff976dab88 R13: ffff88802afe8000 R14: ffff88802afe84c8 R15: 0000000000000100 __qdisc_destroy+0x11a/0x490 net/sched/sch_generic.c:1079 qdisc_put+0xb0/0xf0 net/sched/sch_generic.c:1105 shutdown_scheduler_queue+0xa5/0x160 net/sched/sch_generic.c:1158 netdev_for_each_tx_queue include/linux/netdevice.h:2680 [inline] dev_shutdown+0xb3/0x440 net/sched/sch_generic.c:1490 unregister_netdevice_many_notify+0xd56/0x2580 net/core/dev.c:12384 unregister_netdevice_many net/core/dev.c:12459 [inline] unregister_netdevice_queue net/core/dev.c:12273 [inline] unregister_netdevice_queue+0x30b/0x3c0 net/core/dev.c:12263 unregister_netdevice include/linux/netdevice.h:3405 [inline] __tun_detach+0x1173/0x1480 drivers/net/tun.c:621 tun_detach drivers/net/tun.c:637 [inline] tun_chr_close+0xc2/0x220 drivers/net/tun.c:3436 __fput+0x3ff/0xb40 fs/file_table.c:469 task_work_run+0x150/0x240 kernel/task_work.c:233 resume_user_mode_work include/linux/resume_user_mode.h:50 [inline] __exit_to_user_mode_loop kernel/entry/common.c:67 [inline] exit_to_user_mode_loop+0x100/0x4a0 kernel/entry/common.c:98 __exit_to_user_mode_prepare include/linux/irq-entry-common.h:226 [inline] syscall_exit_to_user_mode_prepare include/linux/irq-entry-common.h:256 [inline] syscall_exit_to_user_mode include/linux/entry-common.h:325 [inline] do_syscall_64+0x67c/0xf80 arch/x86/entry/syscall_64.c:100 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f1350f9bf79 Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 e8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007ffc1e1ff038 EFLAGS: 00000246 ORIG_RAX: 00000000000001b4 RAX: 0000000000000000 RBX: 00007ffc1e1ff120 RCX: 00007f1350f9bf79 RDX: 0000000000000000 RSI: 000000000000001e RDI: 0000000000000003 RBP: 00000000000a7202 R08: 0000000000000001 R09: 0000000000000000 R10: 0000001b30a20000 R11: 0000000000000246 R12: 00007ffc1e1ff160 R13: 00007f1351215fac R14: 00000000000a72d0 R15: 00007f1351215fa0 ---------------- Code disassembly (best guess): 0: 00 00 add %al,(%rax) 2: 00 fc add %bh,%ah 4: ff lcall (bad) 5: df 49 8d fisttps -0x73(%rcx) 8: 94 xchg %eax,%esp 9: 24 78 and $0x78,%al b: 01 00 add %eax,(%rax) d: 00 48 89 add %cl,-0x77(%rax) 10: f9 stc 11: 48 c1 e9 03 shr $0x3,%rcx 15: 80 3c 01 00 cmpb $0x0,(%rcx,%rax,1) 19: 0f 85 15 04 00 00 jne 0x434 1f: 48 8d 3d 85 2a ec 0e lea 0xeec2a85(%rip),%rdi # 0xeec2aab 26: 48 8b 75 18 mov 0x18(%rbp),%rsi * 2a: 67 48 0f b9 3a ud1 (%edx),%rdi <-- trapping instruction 2f: e9 77 f7 ff ff jmp 0xfffff7ab 34: e8 d2 92 38 00 call 0x38930b 39: 90 nop 3a: 0f 0b ud2 3c: 90 nop 3d: e9 .byte 0xe9 3e: ff f5 push %rbp