syzbot


WARNING: locking bug in rcu_pending_enqueue

Status: upstream: reported on 2024/11/15 12:29
Subsystems: bcachefs
[Documentation on labels]
Reported-by: syzbot+b63566ef71c0f462e815@syzkaller.appspotmail.com
First crash: 6d13h, last: 6d13h
Discussions (1)
Title Replies (including bot) Last reply
[syzbot] [bcachefs?] WARNING: locking bug in rcu_pending_enqueue 0 (1) 2024/11/15 12:29

Sample crash report:
------------[ cut here ]------------
Looking for class "p->lock" with key rcu_pending_init.__key, but found a different class "&p->lock" with the same key
WARNING: CPU: 0 PID: 44 at kernel/locking/lockdep.c:939 look_up_lock_class+0xec/0x160 kernel/locking/lockdep.c:936
Modules linked in:
CPU: 0 UID: 0 PID: 44 Comm: kworker/u8:3 Not tainted 6.12.0-rc6-syzkaller-g563047e691f2 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024
Workqueue: btree_update btree_interior_update_work
pstate: 604000c5 (nZCv daIF +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : look_up_lock_class+0xec/0x160 kernel/locking/lockdep.c:936
lr : look_up_lock_class+0xec/0x160 kernel/locking/lockdep.c:936
sp : ffff800097fe6fa0
x29: ffff800097fe6fa0 x28: dfff800000000000 x27: 0000000000000000
x26: ffff8000973358c0 x25: ffff800097335000 x24: 0000000000000001
x23: 0000000000000000 x22: 1ffff00011f020ba x21: ffff8000974dc7a0
x20: fffffdffbf6f0340 x19: ffff800092e82b80 x18: 0000000000000008
x17: 747562202c79656b x16: ffff8000830cb670 x15: 0000000000000001
x14: 1fffe000366c6ce2 x13: 0000000000000000 x12: 0000000000000000
x11: 0000000000000003 x10: 0000000000ff0100 x9 : 2e0fef016daf9f00
x8 : 2e0fef016daf9f00 x7 : 0000000000000001 x6 : 0000000000000001
x5 : ffff800097fe66d8 x4 : ffff80008f8fd0c0 x3 : ffff80008062728c
x2 : 0000000000000001 x1 : 0000000100000001 x0 : 0000000000000000
Call trace:
 look_up_lock_class+0xec/0x160 kernel/locking/lockdep.c:936 (P)
 look_up_lock_class+0xec/0x160 kernel/locking/lockdep.c:936 (L)
 register_lock_class+0x8c/0x6b4 kernel/locking/lockdep.c:1290
 __lock_acquire+0x18c/0x77c8 kernel/locking/lockdep.c:5077
 lock_acquire+0x240/0x728 kernel/locking/lockdep.c:5825
 __raw_spin_lock include/linux/spinlock_api_smp.h:133 [inline]
 _raw_spin_lock+0x48/0x60 kernel/locking/spinlock.c:154
 spin_lock include/linux/spinlock.h:351 [inline]
 __rcu_pending_enqueue fs/bcachefs/rcu_pending.c:418 [inline]
 rcu_pending_enqueue+0x164/0x898 fs/bcachefs/rcu_pending.c:515
 bkey_cached_free+0xb8/0x214 fs/bcachefs/btree_key_cache.c:115
 bch2_btree_key_cache_drop+0x104/0x210 fs/bcachefs/btree_key_cache.c:586
 bch2_trans_commit_write_locked fs/bcachefs/btree_trans_commit.c:824 [inline]
 do_bch2_trans_commit fs/bcachefs/btree_trans_commit.c:900 [inline]
 __bch2_trans_commit+0x4d64/0x6604 fs/bcachefs/btree_trans_commit.c:1121
 bch2_trans_commit fs/bcachefs/btree_update.h:184 [inline]
 btree_update_nodes_written fs/bcachefs/btree_update_interior.c:728 [inline]
 btree_interior_update_work+0xd40/0x1e00 fs/bcachefs/btree_update_interior.c:866
 process_one_work+0x7bc/0x1600 kernel/workqueue.c:3229
 process_scheduled_works kernel/workqueue.c:3310 [inline]
 worker_thread+0x97c/0xeec kernel/workqueue.c:3391
 kthread+0x288/0x310 kernel/kthread.c:389
 ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:862
irq event stamp: 938478
hardirqs last  enabled at (938477): [<ffff800080ac7d3c>] kasan_quarantine_put+0x1a0/0x1c8 mm/kasan/quarantine.c:234
hardirqs last disabled at (938478): [<ffff800082a539e8>] __rcu_pending_enqueue fs/bcachefs/rcu_pending.c:416 [inline]
hardirqs last disabled at (938478): [<ffff800082a539e8>] rcu_pending_enqueue+0xe4/0x898 fs/bcachefs/rcu_pending.c:515
softirqs last  enabled at (938018): [<ffff8000866510a8>] spin_unlock_bh include/linux/spinlock.h:396 [inline]
softirqs last  enabled at (938018): [<ffff8000866510a8>] nsim_dev_trap_report drivers/net/netdevsim/dev.c:820 [inline]
softirqs last  enabled at (938018): [<ffff8000866510a8>] nsim_dev_trap_report_work+0x620/0x938 drivers/net/netdevsim/dev.c:851
softirqs last disabled at (938016): [<ffff800086651024>] spin_lock_bh include/linux/spinlock.h:356 [inline]
softirqs last disabled at (938016): [<ffff800086651024>] nsim_dev_trap_report drivers/net/netdevsim/dev.c:816 [inline]
softirqs last disabled at (938016): [<ffff800086651024>] nsim_dev_trap_report_work+0x59c/0x938 drivers/net/netdevsim/dev.c:851
---[ end trace 0000000000000000 ]---

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/11/11 12:24 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci 563047e691f2 97fe5517 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 WARNING: locking bug in rcu_pending_enqueue
* Struck through repros no longer work on HEAD.