------------[ cut here ]------------ refcount_t: underflow; use-after-free. WARNING: lib/refcount.c:28 at refcount_warn_saturate+0xb2/0x110 lib/refcount.c:28, CPU#1: syz-executor/5645 Modules linked in: CPU: 1 UID: 0 PID: 5645 Comm: syz-executor Not tainted syzkaller #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/09/2026 RIP: 0010:refcount_warn_saturate+0xb2/0x110 lib/refcount.c:28 Code: 34 3d 89 0b 67 48 0f b9 3a eb 4a e8 08 ec 13 fd 48 8d 3d 31 3d 89 0b 67 48 0f b9 3a eb 37 e8 f5 eb 13 fd 48 8d 3d 2e 3d 89 0b <67> 48 0f b9 3a eb 24 e8 e2 eb 13 fd 48 8d 3d 2b 3d 89 0b 67 48 0f RSP: 0018:ffffc900047f75b8 EFLAGS: 00010293 RAX: ffffffff84b1caab RBX: 0000000000000003 RCX: ffff88807d131f00 RDX: 0000000000000000 RSI: ffffffff8f110f40 RDI: ffffffff903b07e0 RBP: 0000000000000000 R08: ffff88807d131f00 R09: 0000000000000005 R10: 0000000000000004 R11: 0000000000000000 R12: ffff8880346d6c00 R13: ffff88806805e460 R14: ffff88806805e478 R15: dffffc0000000000 FS: 0000000000000000(0000) GS:ffff88812539e000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007ffdc3120f00 CR3: 000000000e74a000 CR4: 00000000003526f0 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+0x3c7/0x3d0 lib/klist.c:206 klist_put lib/klist.c:217 [inline] klist_del lib/klist.c:230 [inline] klist_remove+0x1c9/0x340 lib/klist.c:249 device_move+0x193/0x730 drivers/base/core.c:4632 hci_conn_del_sysfs+0xb8/0x1a0 net/bluetooth/hci_sysfs.c:75 hci_conn_cleanup net/bluetooth/hci_conn.c:173 [inline] hci_conn_del+0xc36/0x1230 net/bluetooth/hci_conn.c:1309 hci_conn_hash_flush+0x191/0x260 net/bluetooth/hci_conn.c:2737 hci_dev_close_sync+0x85d/0x1150 net/bluetooth/hci_sync.c:5378 hci_dev_do_close net/bluetooth/hci_core.c:502 [inline] hci_unregister_dev+0x21a/0x5a0 net/bluetooth/hci_core.c:2679 vhci_release+0x152/0x1a0 drivers/bluetooth/hci_vhci.c:690 __fput+0x44f/0xa60 fs/file_table.c:510 task_work_run+0x1d9/0x270 kernel/task_work.c:233 exit_task_work include/linux/task_work.h:40 [inline] do_exit+0x70f/0x22c0 kernel/exit.c:976 do_group_exit+0x21b/0x2d0 kernel/exit.c:1119 get_signal+0x1284/0x1330 kernel/signal.c:3037 arch_do_signal_or_restart+0xbc/0x840 arch/x86/kernel/signal.c:337 __exit_to_user_mode_loop kernel/entry/common.c:64 [inline] exit_to_user_mode_loop+0xa9/0x680 kernel/entry/common.c:98 __exit_to_user_mode_prepare include/linux/irq-entry-common.h:207 [inline] syscall_exit_to_user_mode_prepare include/linux/irq-entry-common.h:230 [inline] syscall_exit_to_user_mode include/linux/entry-common.h:318 [inline] do_syscall_64+0x353/0x580 arch/x86/entry/syscall_64.c:100 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f9f2215d68e Code: Unable to access opcode bytes at 0x7f9f2215d664. RSP: 002b:00007ffec3c47df8 EFLAGS: 00000246 ORIG_RAX: 0000000000000000 RAX: fffffffffffffe00 RBX: 000055555e8b1500 RCX: 00007f9f2215d68e RDX: 0000000000000030 RSI: 00007ffec3c47ef0 RDI: 00000000000000f9 RBP: 00007ffec3c47e9c R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000258 R13: 00000000000927c0 R14: 0000000000053a8c R15: 00007ffec3c47ef0 ---------------- Code disassembly (best guess): 0: 34 3d xor $0x3d,%al 2: 89 0b mov %ecx,(%rbx) 4: 67 48 0f b9 3a ud1 (%edx),%rdi 9: eb 4a jmp 0x55 b: e8 08 ec 13 fd call 0xfd13ec18 10: 48 8d 3d 31 3d 89 0b lea 0xb893d31(%rip),%rdi # 0xb893d48 17: 67 48 0f b9 3a ud1 (%edx),%rdi 1c: eb 37 jmp 0x55 1e: e8 f5 eb 13 fd call 0xfd13ec18 23: 48 8d 3d 2e 3d 89 0b lea 0xb893d2e(%rip),%rdi # 0xb893d58 * 2a: 67 48 0f b9 3a ud1 (%edx),%rdi <-- trapping instruction 2f: eb 24 jmp 0x55 31: e8 e2 eb 13 fd call 0xfd13ec18 36: 48 8d 3d 2b 3d 89 0b lea 0xb893d2b(%rip),%rdi # 0xb893d68 3d: 67 addr32 3e: 48 rex.W 3f: 0f .byte 0xf