Hello,
syzbot found the following issue on:
HEAD commit: f48aeeaaa64c Linux 5.15.109
git tree: linux-5.15.y
console output:
https://syzkaller.appspot.com/x/log.txt?x=17e637a0280000
kernel config:
https://syzkaller.appspot.com/x/.config?x=f0ea19992afd55ad
dashboard link:
https://syzkaller.appspot.com/bug?extid=5769cfc76b5700f915bb
compiler: Debian clang version 15.0.7, GNU ld (GNU Binutils for Debian) 2.35.2
Unfortunately, I don't have any reproducer for this issue yet.
Downloadable assets:
disk image:
https://storage.googleapis.com/syzbot-assets/fd82b060cee7/disk-f48aeeaa.raw.xz
vmlinux:
https://storage.googleapis.com/syzbot-assets/b216234bd1a0/vmlinux-f48aeeaa.xz
kernel image:
https://storage.googleapis.com/syzbot-assets/c0609f7a6703/bzImage-f48aeeaa.xz
IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by:
[email protected]
=====================================
WARNING: bad unlock balance detected!
5.15.109-syzkaller #0 Not tainted
-------------------------------------
kworker/u5:2/3543 is trying to release lock (&conn->chan_lock) at:
[<ffffffff89428093>] l2cap_le_sig_cmd net/bluetooth/l2cap_core.c:6426 [inline]
[<ffffffff89428093>] l2cap_le_sig_channel net/bluetooth/l2cap_core.c:6464 [inline]
[<ffffffff89428093>] l2cap_recv_frame+0x1fc3/0x8870 net/bluetooth/l2cap_core.c:7796
but there are no more locks to release!
other info that might help us debug this:
2 locks held by kworker/u5:2/3543:
#0: ffff8880155ab938 ((wq_completion)hci4#2){+.+.}-{0:0}, at: process_one_work+0x78a/0x10c0 kernel/workqueue.c:2279
#1: ffffc90002f3fd20 ((work_completion)(&hdev->rx_work)){+.+.}-{0:0}, at: process_one_work+0x7d0/0x10c0 kernel/workqueue.c:2281
stack backtrace:
CPU: 0 PID: 3543 Comm: kworker/u5:2 Not tainted 5.15.109-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/14/2023
Workqueue: hci4 hci_rx_work
Call Trace:
<TASK>
__dump_stack lib/dump_stack.c:88 [inline]
dump_stack_lvl+0x1e3/0x2cb lib/dump_stack.c:106
print_unlock_imbalance_bug+0x248/0x2b0 kernel/locking/lockdep.c:5064
__lock_release kernel/locking/lockdep.c:5301 [inline]
lock_release+0x596/0x9a0 kernel/locking/lockdep.c:5642
__mutex_unlock_slowpath+0xde/0x750 kernel/locking/mutex.c:851
l2cap_le_sig_cmd net/bluetooth/l2cap_core.c:6426 [inline]
l2cap_le_sig_channel net/bluetooth/l2cap_core.c:6464 [inline]
l2cap_recv_frame+0x1fc3/0x8870 net/bluetooth/l2cap_core.c:7796
hci_acldata_packet net/bluetooth/hci_core.c:4967 [inline]
hci_rx_work+0x489/0x7d0 net/bluetooth/hci_core.c:5158
process_one_work+0x8a1/0x10c0 kernel/workqueue.c:2306
worker_thread+0xaca/0x1280 kernel/workqueue.c:2453
kthread+0x3f6/0x4f0 kernel/kthread.c:319
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:298
If the bug is already fixed, let syzbot know by replying with:
#syz fix: exact-commit-title
If you want to change bug's subsystems, reply with:
#syz set subsystems: new-subsystem
(See the list of subsystem names on the web dashboard)
If the bug is a duplicate of another bug, reply with:
#syz dup: exact-subject-of-another-report
If you want to undo deduplication, reply with:
#syz undup