syzbot


BUG: MAX_LOCK_DEPTH too low!

Status: upstream: reported C repro on 2025/10/04 16:06
Bug presence: origin:lts-only
[Documentation on labels]
Reported-by: syzbot+794b5787fd2a267cb4c2@syzkaller.appspotmail.com
First crash: 9d02h, last: 11h23m
Bug presence (2)
Date Name Commit Repro Result
2025/10/07 linux-6.6.y (ToT) e617101e5626 C [report] BUG: MAX_LOCK_DEPTH too low!
2025/10/07 upstream (ToT) c746c3b51698 C Didn't crash
Similar bugs (5)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream BUG: MAX_LOCK_DEPTH too low! net -1 1 2722d 2722d 5/29 fixed on 2018/05/17 10:02
upstream BUG: MAX_LOCK_DEPTH too low! (3) smc -1 C done 18 1333d 1342d 22/29 fixed on 2023/02/24 13:50
upstream BUG: MAX_LOCK_DEPTH too low! (5) btrfs -1 C 11 15d 337d 0/29 upstream: reported C repro on 2024/11/10 09:16
upstream BUG: MAX_LOCK_DEPTH too low! (2) net -1 C done 5 2649d 2679d 13/29 fixed on 2019/11/11 16:48
upstream BUG: MAX_LOCK_DEPTH too low! (4) bcachefs -1 C error 1364 427d 523d 27/29 fixed on 2024/08/25 15:26

Sample crash report:
BTRFS warning (device loop1: state EA): Skipping commit of aborted transaction.
BTRFS: error (device loop1: state EA) in cleanup_transaction:2004: errno=-5 IO failure
BUG: MAX_LOCK_DEPTH too low!
turning off the locking correctness validator.
depth: 48  max: 48!
48 locks held by syz.1.18/5948:
 #0: ffff88805d298ef0 (&sb->s_type->i_mutex_key#20){+.+.}-{3:3}, at: inode_trylock include/linux/fs.h:824 [inline]
 #0: ffff88805d298ef0 (&sb->s_type->i_mutex_key#20){+.+.}-{3:3}, at: btrfs_inode_lock+0x8d/0xe0 fs/btrfs/inode.c:372
 #1: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #2: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #3: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #4: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #5: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #6: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #7: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #8: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #9: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #10: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #11: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #12: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #13: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #14: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #15: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #16: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #17: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #18: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #19: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #20: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #21: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #22: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #23: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #24: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #25: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #26: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #27: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #28: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #29: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #30: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #31: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #32: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #33: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #34: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #35: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #36: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #37: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #38: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #39: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #40: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #41: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #42: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #43: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #44: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #45: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #46: ffff8880315e82c8 (btrfs-tree-01){++++}-{3:3}, at: btrfs_try_tree_read_lock+0x1e/0x1f0 fs/btrfs/locking.c:152
 #47: ffffffff8cd2ff20 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:334 [inline]
 #47: ffffffff8cd2ff20 (rcu_read_lock){....}-{1:2}, at: rcu_read_lock include/linux/rcupdate.h:786 [inline]
 #47: ffffffff8cd2ff20 (rcu_read_lock){....}-{1:2}, at: find_extent_buffer_nolock+0x21/0x320 fs/btrfs/extent_io.c:1637
INFO: lockdep is turned off.
CPU: 1 PID: 5948 Comm: syz.1.18 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/18/2025
Call Trace:
 <TASK>
 dump_stack_lvl+0x16c/0x230 lib/dump_stack.c:106
 __lock_acquire+0x1ba4/0x7c80 kernel/locking/lockdep.c:-1
 lock_acquire+0x197/0x410 kernel/locking/lockdep.c:5754
 rcu_lock_acquire include/linux/rcupdate.h:334 [inline]
 rcu_read_lock include/linux/rcupdate.h:786 [inline]
 find_extent_buffer_nolock+0x3d/0x320 fs/btrfs/extent_io.c:1637
 find_extent_buffer+0x24/0x1a0 fs/btrfs/extent_io.c:3594
 read_block_for_search+0x2eb/0x990 fs/btrfs/ctree.c:1686
 btrfs_search_slot+0x109a/0x27e0 fs/btrfs/ctree.c:2355
 btrfs_lookup_file_extent+0xd9/0x120 fs/btrfs/file-item.c:270
 can_nocow_extent+0x1bb/0x810 fs/btrfs/inode.c:7093
 btrfs_check_nocow_lock+0x245/0x3a0 fs/btrfs/file.c:1092
 btrfs_buffered_write+0x559/0x1130 fs/btrfs/file.c:1265
 btrfs_do_write_iter+0x24b/0x11b0 fs/btrfs/file.c:1689
 call_write_iter include/linux/fs.h:2018 [inline]
 aio_write+0x53c/0x790 fs/aio.c:1593
 __io_submit_one fs/aio.c:-1 [inline]
 io_submit_one+0x70b/0x1240 fs/aio.c:2012
 __do_sys_io_submit fs/aio.c:2071 [inline]
 __se_sys_io_submit+0x194/0x300 fs/aio.c:2041
 do_syscall_x64 arch/x86/entry/common.c:51 [inline]
 do_syscall_64+0x55/0xb0 arch/x86/entry/common.c:81
 entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7fb5e878eec9
Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 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 a8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007ffe7dc7f1c8 EFLAGS: 00000246 ORIG_RAX: 00000000000000d1
RAX: ffffffffffffffda RBX: 00007fb5e89e5fa0 RCX: 00007fb5e878eec9
RDX: 0000200000000540 RSI: 0000000000000001 RDI: 00007fb5e95b9000
RBP: 00007fb5e8811f91 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007fb5e89e5fa0 R14: 00007fb5e89e5fa0 R15: 0000000000000003
 </TASK>

Crashes (4):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/10/04 17:50 linux-6.6.y f34f16e5c632 49379ee0 .config console log report syz / log C [disk image] [vmlinux] [kernel image] [mounted in repro (clean fs)] ci2-linux-6-6-kasan BUG: MAX_LOCK_DEPTH too low!
2025/10/13 07:39 linux-6.6.y 655054d2c3c1 ff1712fe .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan BUG: MAX_LOCK_DEPTH too low!
2025/10/04 16:26 linux-6.6.y f34f16e5c632 49379ee0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan BUG: MAX_LOCK_DEPTH too low!
2025/10/04 16:06 linux-6.6.y f34f16e5c632 49379ee0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan BUG: MAX_LOCK_DEPTH too low!
* Struck through repros no longer work on HEAD.