]> www.infradead.org Git - users/jedix/linux-maple.git/commit
bcachefs: Kill unnecessary mark_lock usage
authorKent Overstreet <kent.overstreet@linux.dev>
Sun, 8 Dec 2024 09:11:21 +0000 (04:11 -0500)
committerKent Overstreet <kent.overstreet@linux.dev>
Sat, 21 Dec 2024 06:36:22 +0000 (01:36 -0500)
commit49f2d182638a54ecda9cb35ede5224f8d9f5f2e6
treed4f1b78c660904483af69fe89cb2f82b3e407dcd
parent54dacdada6de8d97e7ca7e51eadc96c61032bdb4
bcachefs: Kill unnecessary mark_lock usage

We can't hold mark_lock while calling fsck_err() - that's a deadlock,
mark_lock is meant to be a leaf node lock.

It's also unnecessary for gc_bucket() and bucket_gen(); rcu suffices
since the bucket_gens array describes its size, and we can't race with
device removal or resize during gc/fsck since that takes state lock.

Reported-by: syzbot+38641fcbda1aaffefdd4@syzkaller.appspotmail.com
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/alloc_foreground.c
fs/bcachefs/bcachefs.h
fs/bcachefs/btree_gc.c
fs/bcachefs/buckets.c
fs/bcachefs/buckets.h
fs/bcachefs/ec.c
fs/bcachefs/errcode.h
fs/bcachefs/super.c