syzbot


WARNING: locking bug in rcu_pending_pcpu_dequeue

Status: upstream: reported on 2024/10/25 12:19
Subsystems: bcachefs
[Documentation on labels]
Reported-by: syzbot+e103923b16da1cda0ae0@syzkaller.appspotmail.com
First crash: 45d, last: 26d
Discussions (1)
Title Replies (including bot) Last reply
[syzbot] [bcachefs?] WARNING: locking bug in rcu_pending_pcpu_dequeue 0 (1) 2024/10/25 12:19

Sample crash report:
while marking u64s 11 type btree_ptr_v2 SPOS_MAX len 0 ver 0: seq 1db8f60c84bb244c written 8 min_key POS_MIN durability: 1 ptr: 0:42:0 gen 0, fixing
bucket 0:0 gen 0 has wrong data_type: got free, should be sb, fixing
bucket 0:0 gen 0 data type sb has wrong dirty_sectors: got 0, should be 256, fixing
------------[ cut here ]------------
Looking for class "->lock" with key rcu_pending_init.__key, but found a different class "&p->lock" with the same key
WARNING: CPU: 1 PID: 5348 at kernel/locking/lockdep.c:939 look_up_lock_class+0xdc/0x170 kernel/locking/lockdep.c:936
Modules linked in:
CPU: 1 UID: 0 PID: 5348 Comm: syz.2.3 Not tainted 6.12.0-rc3-next-20241016-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024
RIP: 0010:look_up_lock_class+0xdc/0x170 kernel/locking/lockdep.c:936
Code: 01 0f 85 8a 00 00 00 c6 05 85 31 3b 04 01 90 49 8b 16 49 8b 76 18 48 8b 8b b8 00 00 00 48 c7 c7 60 f0 0a 8c e8 c5 9c 89 f5 90 <0f> 0b 90 90 eb 61 90 e8 c8 d2 ed f8 e8 53 d7 a8 f5 48 c7 c7 a0 ef
RSP: 0018:ffffc900042dd810 EFLAGS: 00010046
RAX: a3cf1fd56a819d00 RBX: ffffffff93cc6b10 RCX: 0000000000040000
RDX: ffffc90009742000 RSI: 000000000003ffff RDI: 0000000000040000
RBP: ffffc900042dd920 R08: ffffffff8155d7b2 R09: 1ffff110170e519a
R10: dffffc0000000000 R11: ffffed10170e519b R12: ffffe8ffffd748a0
R13: ffffe8ffffd748a0 R14: ffffe8ffffd748a0 R15: ffffffff9a5954a0
FS:  00007f2715b246c0(0000) GS:ffff8880b8700000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000555c28f0cb00 CR3: 0000000077a9a000 CR4: 00000000003526f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <TASK>
 register_lock_class+0x102/0x980 kernel/locking/lockdep.c:1290
 __lock_acquire+0xf0/0x2050 kernel/locking/lockdep.c:5077
 lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825
 __raw_spin_lock_irq include/linux/spinlock_api_smp.h:119 [inline]
 _raw_spin_lock_irq+0xd3/0x120 kernel/locking/spinlock.c:170
 spin_lock_irq include/linux/spinlock.h:376 [inline]
 rcu_pending_pcpu_dequeue+0x29/0x2b0 fs/bcachefs/rcu_pending.c:524
 bkey_cached_alloc fs/bcachefs/btree_key_cache.c:143 [inline]
 btree_key_cache_create fs/bcachefs/btree_key_cache.c:220 [inline]
 btree_key_cache_fill+0x43a/0x2920 fs/bcachefs/btree_key_cache.c:309
 bch2_btree_path_traverse_cached+0x84e/0xbe0 fs/bcachefs/btree_key_cache.c:361
 bch2_btree_path_traverse_one+0x45d/0x2900 fs/bcachefs/btree_iter.c:1144
 bch2_btree_path_traverse fs/bcachefs/btree_iter.h:249 [inline]
 bch2_trans_update_get_key_cache+0x6c0/0x1230 fs/bcachefs/btree_update.c:494
 bch2_trans_update+0x9b1/0x2550 fs/bcachefs/btree_update.c:539
 bch2_alloc_write_key fs/bcachefs/btree_gc.c:886 [inline]
 bch2_gc_alloc_done fs/bcachefs/btree_gc.c:896 [inline]
 bch2_check_allocations+0x4574/0x7350 fs/bcachefs/btree_gc.c:1138
 bch2_run_recovery_pass+0xf0/0x1e0 fs/bcachefs/recovery_passes.c:216
 bch2_run_recovery_passes+0x27e/0x9a0 fs/bcachefs/recovery_passes.c:280
 bch2_fs_recovery+0x25cc/0x39a0 fs/bcachefs/recovery.c:892
 bch2_fs_start+0x356/0x5b0 fs/bcachefs/super.c:1037
 bch2_fs_get_tree+0xd68/0x1710 fs/bcachefs/fs.c:2174
 vfs_get_tree+0x90/0x2b0 fs/super.c:1814
 do_new_mount+0x2be/0xb40 fs/namespace.c:3507
 do_mount fs/namespace.c:3847 [inline]
 __do_sys_mount fs/namespace.c:4055 [inline]
 __se_sys_mount+0x2d6/0x3c0 fs/namespace.c:4032
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f2714d7f79a
Code: d8 64 89 02 48 c7 c0 ff ff ff ff eb a6 e8 de 1a 00 00 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 49 89 ca b8 a5 00 00 00 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:00007f2715b23e68 EFLAGS: 00000246 ORIG_RAX: 00000000000000a5
RAX: ffffffffffffffda RBX: 00007f2715b23ef0 RCX: 00007f2714d7f79a
RDX: 0000000020000040 RSI: 0000000020000080 RDI: 00007f2715b23eb0
RBP: 0000000020000040 R08: 00007f2715b23ef0 R09: 0000000002200006
R10: 0000000002200006 R11: 0000000000000246 R12: 0000000020000080
R13: 00007f2715b23eb0 R14: 00000000000059d2 R15: 0000000020000740
 </TASK>

Crashes (2):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/10/21 12:10 linux-next 15e7d45e786a cd6fc0a3 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: locking bug in rcu_pending_pcpu_dequeue
2024/11/09 08:59 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci ca3a5c08a5ef 6b856513 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 WARNING: locking bug in rcu_pending_pcpu_dequeue
* Struck through repros no longer work on HEAD.