===================================== WARNING: bad unlock balance detected! 5.15.185-syzkaller #0 Not tainted ------------------------------------- kworker/u5:4/4180 is trying to release lock (&chan->lock) at: [] l2cap_recv_frame+0xd09/0x79d0 net/bluetooth/l2cap_core.c:-1 but there are no more locks to release! other info that might help us debug this: 2 locks held by kworker/u5:4/4180: #0: ffff88807d7b4938 ((wq_completion)hci1#2){+.+.}-{0:0}, at: process_one_work+0x760/0x1000 kernel/workqueue.c:-1 #1: ffffc90002f3fd00 ((work_completion)(&hdev->rx_work)){+.+.}-{0:0}, at: process_one_work+0x7a3/0x1000 kernel/workqueue.c:2285 stack backtrace: CPU: 0 PID: 4180 Comm: kworker/u5:4 Not tainted 5.15.185-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025 Workqueue: hci1 hci_rx_work Call Trace: dump_stack_lvl+0x168/0x230 lib/dump_stack.c:106 __lock_release kernel/locking/lockdep.c:5302 [inline] lock_release+0x52f/0x870 kernel/locking/lockdep.c:5643 __mutex_unlock_slowpath+0xb3/0x6a0 kernel/locking/mutex.c:851 l2cap_recv_frame+0xd09/0x79d0 net/bluetooth/l2cap_core.c:-1 hci_acldata_packet net/bluetooth/hci_core.c:4973 [inline] hci_rx_work+0x4a4/0xa10 net/bluetooth/hci_core.c:5165 process_one_work+0x863/0x1000 kernel/workqueue.c:2310 worker_thread+0xaa8/0x12a0 kernel/workqueue.c:2457 kthread+0x436/0x520 kernel/kthread.c:334 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:287