bcachefs: Really don't hold btree locks while btree IOs are in flight
authorKent Overstreet <kent.overstreet@gmail.com>
Sun, 11 Jul 2021 03:03:15 +0000 (23:03 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Sun, 22 Oct 2023 21:09:08 +0000 (17:09 -0400)
commit19d5432445fd0898231063518c375f7551d7c3d2
tree8c45d7d67a972bd136aa756d0866ae7a3210ed81
parente3a67bdb6e3ab6a6850c546a3772998fe5242069
bcachefs: Really don't hold btree locks while btree IOs are in flight

This is something we've attempted to stick to for quite some time, as it
helps guarantee filesystem latency - but there's a few remaining paths
that this patch fixes.

This is also necessary for an upcoming patch to update btree pointers
after every btree write - since the btree write completion path will now
be doing btree operations.

Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/btree_cache.c
fs/bcachefs/btree_io.c
fs/bcachefs/btree_io.h
fs/bcachefs/btree_update_interior.c
fs/bcachefs/debug.c