bcachefs: Optimize bch2_btree_iter_verify_level()
authorKent Overstreet <kent.overstreet@gmail.com>
Sun, 21 Mar 2021 02:13:30 +0000 (22:13 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Sun, 22 Oct 2023 21:08:56 +0000 (17:08 -0400)
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/btree_iter.c

index 97d8060..073157f 100644 (file)
@@ -492,9 +492,9 @@ static void bch2_btree_iter_verify_cached(struct btree_iter *iter)
 static void bch2_btree_iter_verify_level(struct btree_iter *iter,
                                         unsigned level)
 {
-       struct btree_iter_level *l = &iter->l[level];
-       struct btree_node_iter tmp = l->iter;
-       bool locked = btree_node_locked(iter, level);
+       struct btree_iter_level *l;
+       struct btree_node_iter tmp;
+       bool locked;
        struct bkey_packed *p, *k;
        char buf1[100], buf2[100], buf3[100];
        const char *msg;
@@ -502,6 +502,10 @@ static void bch2_btree_iter_verify_level(struct btree_iter *iter,
        if (!bch2_debug_check_iterators)
                return;
 
+       l       = &iter->l[level];
+       tmp     = l->iter;
+       locked  = btree_node_locked(iter, level);
+
        if (btree_iter_type(iter) == BTREE_ITER_CACHED) {
                if (!level)
                        bch2_btree_iter_verify_cached(iter);