summaryrefslogtreecommitdiff
path: root/fs/bcachefs/btree_iter.c
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@gmail.com>2022-01-12 02:13:21 -0500
committerKent Overstreet <kent.overstreet@gmail.com>2022-04-17 15:44:20 -0400
commit02eb120c37f954810d2bec36b22d34d4ecf4fa2b (patch)
treec19875fc84b049869b913a22e572a38b7c4e175f /fs/bcachefs/btree_iter.c
parentcf430718c0619e2950b1ca86412cded84026e683 (diff)
bcachefs: btree_id_cached()
Add a new helper that returns true if the given btree ID uses the btree key cache. This enables some new cleanups, since the helper can check the options for whether caching is enabled on a given btree. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
Diffstat (limited to 'fs/bcachefs/btree_iter.c')
-rw-r--r--fs/bcachefs/btree_iter.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/bcachefs/btree_iter.c b/fs/bcachefs/btree_iter.c
index 4ffdfa01bcd2..3ce4b1cc494e 100644
--- a/fs/bcachefs/btree_iter.c
+++ b/fs/bcachefs/btree_iter.c
@@ -2849,6 +2849,9 @@ static void __bch2_trans_iter_init(struct btree_trans *trans,
if (!test_bit(JOURNAL_REPLAY_DONE, &trans->c->journal.flags))
flags |= BTREE_ITER_WITH_JOURNAL;
+ if (!btree_id_cached(trans->c, btree_id))
+ flags &= ~BTREE_ITER_CACHED;
+
iter->trans = trans;
iter->path = NULL;
iter->update_path = NULL;