summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--fs/bcachefs/btree_iter.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/fs/bcachefs/btree_iter.c b/fs/bcachefs/btree_iter.c
index 6351e6c113e4..e19a9699318c 100644
--- a/fs/bcachefs/btree_iter.c
+++ b/fs/bcachefs/btree_iter.c
@@ -2210,6 +2210,9 @@ inline bool bch2_btree_iter_advance(struct btree_iter *iter)
bch2_btree_iter_set_pos(iter, pos);
return ret;
} else {
+ if (!btree_path_node(iter->path, iter->path->level))
+ return true;
+
iter->advanced = true;
return false;
}
@@ -2600,7 +2603,7 @@ struct bkey_s_c bch2_btree_iter_peek_all_levels(struct btree_iter *iter)
break;
}
- bch2_btree_iter_set_pos(iter, k.k->p);
+ iter->pos = k.k->p;
out:
iter->path->should_be_locked = true;
bch2_btree_iter_verify(iter);