============================= WARNING: suspicious RCU usage 6.10.0-rc6-syzkaller-g8a03d70c27fc #0 Not tainted ----------------------------- fs/bcachefs/buckets.h:107 suspicious rcu_dereference_check() usage! other info that might help us debug this: rcu_scheduler_active = 2, debug_locks = 1 9 locks held by syz.4.596/11967: #0: ffff0000d8882420 (sb_writers#12){.+.+}-{0:0}, at: mnt_want_write+0x44/0x9c fs/namespace.c:409 #1: ffff0000d8882730 (&type->s_vfs_rename_key#3){+.+.}-{3:3}, at: lock_rename fs/namei.c:3078 [inline] #1: ffff0000d8882730 (&type->s_vfs_rename_key#3){+.+.}-{3:3}, at: do_renameat2+0x4a0/0xe40 fs/namei.c:4979 #2: ffff0000ecbb52c8 (&type->i_mutex_dir_key#9/1){+.+.}-{3:3}, at: inode_lock_nested include/linux/fs.h:826 [inline] #2: ffff0000ecbb52c8 (&type->i_mutex_dir_key#9/1){+.+.}-{3:3}, at: lock_two_directories+0x144/0x214 fs/namei.c:3044 #3: ffff0000ecbb3528 (&type->i_mutex_dir_key#9/5){+.+.}-{3:3}, at: inode_lock_nested include/linux/fs.h:826 [inline] #3: ffff0000ecbb3528 (&type->i_mutex_dir_key#9/5){+.+.}-{3:3}, at: lock_two_directories+0x16c/0x214 fs/namei.c:3045 #4: ffff0000e4d042d8 (&c->btree_trans_barrier){.+.+}-{0:0}, at: srcu_lock_acquire+0x18/0x54 include/linux/srcu.h:115 #5: ffff0000cb50d870 (&dev->mutex){....}-{3:3}, at: six_relock_type+0x24/0x5c fs/bcachefs/six.h:288 #6: ffff0000cb50d870 (&dev->mutex){....}-{3:3}, at: btree_node_lock_increment fs/bcachefs/btree_locking.h:248 [inline] #6: ffff0000cb50d870 (&dev->mutex){....}-{3:3}, at: __bch2_btree_node_relock+0x6a0/0xa94 fs/bcachefs/btree_locking.c:509 #7: ffff0000ecb015f0 (&dev->mutex){....}-{3:3}, at: six_relock_type+0x24/0x5c fs/bcachefs/six.h:288 #8: ffff0000c8bee070 (&dev->mutex){....}-{3:3}, at: six_relock_type+0x24/0x5c fs/bcachefs/six.h:288 stack backtrace: CPU: 1 PID: 11967 Comm: syz.4.596 Not tainted 6.10.0-rc6-syzkaller-g8a03d70c27fc #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/07/2024 Call trace: dump_backtrace+0x1b8/0x1e4 arch/arm64/kernel/stacktrace.c:317 show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:324 __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0xe4/0x150 lib/dump_stack.c:114 dump_stack+0x1c/0x28 lib/dump_stack.c:123 lockdep_rcu_suspicious+0x260/0x464 kernel/locking/lockdep.c:6712 bucket_gens fs/bcachefs/buckets.h:103 [inline] bucket_gen fs/bcachefs/buckets.h:112 [inline] bch2_bucket_ref_update+0xa34/0xeb4 fs/bcachefs/buckets.c:808 __mark_pointer fs/bcachefs/buckets.c:1000 [inline] bch2_trigger_pointer fs/bcachefs/buckets.c:1037 [inline] __trigger_extent+0x1004/0x40c4 fs/bcachefs/buckets.c:1176 bch2_trigger_extent+0x534/0x734 fs/bcachefs/buckets.c:1261 bch2_key_trigger fs/bcachefs/bkey_methods.h:88 [inline] bch2_key_trigger_old fs/bcachefs/bkey_methods.h:102 [inline] run_one_trans_trigger fs/bcachefs/btree_trans_commit.c:514 [inline] run_btree_triggers+0x7cc/0xc18 fs/bcachefs/btree_trans_commit.c:544 bch2_trans_commit_run_triggers fs/bcachefs/btree_trans_commit.c:576 [inline] __bch2_trans_commit+0x30c/0x592c fs/bcachefs/btree_trans_commit.c:1022 bch2_trans_commit fs/bcachefs/btree_update.h:170 [inline] bch2_inode_delete_keys+0x6d0/0xc78 fs/bcachefs/inode.c:845 bch2_inode_rm+0x16c/0x698 fs/bcachefs/inode.c:874 bch2_evict_inode+0x1d8/0x350 fs/bcachefs/fs.c:1588 evict+0x260/0x68c fs/inode.c:667 iput_final fs/inode.c:1741 [inline] iput+0x74c/0x830 fs/inode.c:1767 dentry_unlink_inode+0x394/0x4d4 fs/dcache.c:400 __dentry_kill+0x178/0x5e8 fs/dcache.c:603 dput+0x1b8/0x290 fs/dcache.c:845 do_renameat2+0x9d4/0xe40 fs/namei.c:5046 __do_sys_renameat2 fs/namei.c:5078 [inline] __se_sys_renameat2 fs/namei.c:5075 [inline] __arm64_sys_renameat2+0xe0/0xfc fs/namei.c:5075 __invoke_syscall arch/arm64/kernel/syscall.c:34 [inline] invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:48 el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:131 do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:150 el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:712 el0t_64_sync_handler+0x84/0xfc arch/arm64/kernel/entry-common.c:730 el0t_64_sync+0x190/0x194 arch/arm64/kernel/entry.S:598 bucket 0:34 gen 7 (mem gen 0) data type user: stale dirty ptr (gen 0) while marking u64s 7 type extent 536870913:8:U32_MAX len 8 ver 0: durability: 1 crc: c_size 8 size 8 offset 0 nonce 0 csum crc32c compress incompressible ptr: 0:34:0 gen 0, shutting down bcachefs (loop4): inconsistency detected - emergency read only at journal seq 11