------------[ cut here ]------------ refcount_t: underflow; use-after-free. WARNING: lib/refcount.c:28 at refcount_warn_saturate+0xf4/0x130 lib/refcount.c:28, CPU#3: syz-executor/23345 Modules linked in: CPU: 3 UID: 0 PID: 23345 Comm: syz-executor 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:refcount_warn_saturate+0xf4/0x130 lib/refcount.c:28 Code: cc e8 a0 e3 11 fd 48 8d 3d 19 30 ed 0b 67 48 0f b9 3a e8 8f e3 11 fd 5b 5d e9 08 68 9d 06 e8 83 e3 11 fd 48 8d 3d 0c 30 ed 0b <67> 48 0f b9 3a e8 72 e3 11 fd 5b 5d c3 cc cc cc cc e8 66 e3 11 fd RSP: 0018:ffffc90007ed7938 EFLAGS: 00010293 RAX: 0000000000000000 RBX: ffff888042340878 RCX: ffffffff84f7134b RDX: ffff88804aa5c980 RSI: ffffffff84f713dd RDI: ffffffff90e443f0 RBP: 0000000000000003 R08: 0000000000000005 R09: 0000000000000004 R10: 0000000000000003 R11: 0000000000000000 R12: ffff8880286ec400 R13: ffff888042340878 R14: ffffffff86303fb0 R15: dffffc0000000000 FS: 0000000000000000(0000) GS:ffff8880d6639000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000556678235300 CR3: 000000003b273000 CR4: 0000000000352ef0 Call Trace: __refcount_sub_and_test include/linux/refcount.h:400 [inline] __refcount_dec_and_test include/linux/refcount.h:432 [inline] refcount_dec_and_test include/linux/refcount.h:450 [inline] kref_put include/linux/kref.h:64 [inline] klist_dec_and_del lib/klist.c:206 [inline] klist_put+0x18a/0x1d0 lib/klist.c:217 klist_del lib/klist.c:230 [inline] klist_remove+0x14c/0x2e0 lib/klist.c:249 device_move+0x12d/0x1140 drivers/base/core.c:4617 hci_conn_del_sysfs+0x86/0x1a0 net/bluetooth/hci_sysfs.c:75 hci_conn_cleanup net/bluetooth/hci_conn.c:173 [inline] hci_conn_del+0x506/0x1180 net/bluetooth/hci_conn.c:1240 hci_conn_hash_flush+0x186/0x280 net/bluetooth/hci_conn.c:2651 hci_dev_close_sync+0x5a7/0x1240 net/bluetooth/hci_sync.c:5368 hci_dev_do_close+0x2e/0xb0 net/bluetooth/hci_core.c:502 hci_unregister_dev+0x227/0x670 net/bluetooth/hci_core.c:2716 vhci_release+0x17d/0x230 drivers/bluetooth/hci_vhci.c:690 __fput+0x3ff/0xb40 fs/file_table.c:469 task_work_run+0x150/0x240 kernel/task_work.c:233 exit_task_work include/linux/task_work.h:40 [inline] do_exit+0x8b8/0x2b60 kernel/exit.c:976 do_group_exit+0xd5/0x2a0 kernel/exit.c:1118 __do_sys_exit_group kernel/exit.c:1129 [inline] __se_sys_exit_group kernel/exit.c:1127 [inline] __x64_sys_exit_group+0x3e/0x50 kernel/exit.c:1127 x64_sys_call+0x102c/0x1530 arch/x86/include/generated/asm/syscalls_64.h:232 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0x106/0xf80 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7fd5c579c819 Code: Unable to access opcode bytes at 0x7fd5c579c7ef. RSP: 002b:00007fff213f9088 EFLAGS: 00000246 ORIG_RAX: 00000000000000e7 RAX: ffffffffffffffda RBX: 00007fd5c58320ba RCX: 00007fd5c579c819 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000001 RBP: 0000000000000016 R08: 0000000000000000 R09: 00007fd5c5832048 R10: 0000000000000000 R11: 0000000000000246 R12: 00007fff213fa340 R13: 00007fd5c5832048 R14: 000055558883d4e8 R15: 00007fff213fc500 ---------------- Code disassembly (best guess): 0: cc int3 1: e8 a0 e3 11 fd call 0xfd11e3a6 6: 48 8d 3d 19 30 ed 0b lea 0xbed3019(%rip),%rdi # 0xbed3026 d: 67 48 0f b9 3a ud1 (%edx),%rdi 12: e8 8f e3 11 fd call 0xfd11e3a6 17: 5b pop %rbx 18: 5d pop %rbp 19: e9 08 68 9d 06 jmp 0x69d6826 1e: e8 83 e3 11 fd call 0xfd11e3a6 23: 48 8d 3d 0c 30 ed 0b lea 0xbed300c(%rip),%rdi # 0xbed3036 * 2a: 67 48 0f b9 3a ud1 (%edx),%rdi <-- trapping instruction 2f: e8 72 e3 11 fd call 0xfd11e3a6 34: 5b pop %rbx 35: 5d pop %rbp 36: c3 ret 37: cc int3 38: cc int3 39: cc int3 3a: cc int3 3b: e8 66 e3 11 fd call 0xfd11e3a6