end_pos now compares against snapshot ID when required

Signed-off-by: Kent Overstreet <[email protected]>
---
 fs/bcachefs/btree_iter.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/fs/bcachefs/btree_iter.c b/fs/bcachefs/btree_iter.c
index bfe9f0c1e1be..0883cf6e1a3e 100644
--- a/fs/bcachefs/btree_iter.c
+++ b/fs/bcachefs/btree_iter.c
@@ -2381,9 +2381,9 @@ struct bkey_s_c bch2_btree_iter_peek_upto(struct 
btree_iter *iter, struct bpos e
                else
                        iter_pos = bkey_max(iter->pos, bkey_start_pos(k.k));
 
-               if (unlikely(!(iter->flags & BTREE_ITER_is_extents)
-                            ? bkey_gt(iter_pos, end)
-                            : bkey_ge(iter_pos, end)))
+               if (unlikely(iter->flags & BTREE_ITER_all_snapshots     ? 
bpos_gt(iter_pos, end) :
+                            iter->flags & BTREE_ITER_is_extents        ? 
bkey_ge(iter_pos, end) :
+                                                                         
bkey_gt(iter_pos, end)))
                        goto end;
 
                break;
-- 
2.45.2


Reply via email to