bcachefs: bkey_min(), bkey_max()
authorKent Overstreet <kent.overstreet@linux.dev>
Fri, 25 Nov 2022 20:01:36 +0000 (15:01 -0500)
committerKent Overstreet <kent.overstreet@linux.dev>
Sun, 22 Oct 2023 21:09:48 +0000 (17:09 -0400)
Parallel to bpos_min(), bpos_max() - trivial refactoring.

Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/bkey.h
fs/bcachefs/btree_iter.c

index dc2b91bc67f3710c2182f5fb98f2f0126a6b3223..28a70ad5a25ddda58beea712405372516bb533db 100644 (file)
@@ -182,6 +182,16 @@ static __always_inline int bpos_cmp(struct bpos l, struct bpos r)
                cmp_int(l.snapshot, r.snapshot);
 }
 
+static inline struct bpos bpos_min(struct bpos l, struct bpos r)
+{
+       return bpos_lt(l, r) ? l : r;
+}
+
+static inline struct bpos bpos_max(struct bpos l, struct bpos r)
+{
+       return bpos_gt(l, r) ? l : r;
+}
+
 static __always_inline bool bkey_eq(struct bpos l, struct bpos r)
 {
        return  !((l.inode      ^ r.inode) |
@@ -218,14 +228,14 @@ static __always_inline int bkey_cmp(struct bpos l, struct bpos r)
                cmp_int(l.offset,   r.offset);
 }
 
-static inline struct bpos bpos_min(struct bpos l, struct bpos r)
+static inline struct bpos bkey_min(struct bpos l, struct bpos r)
 {
-       return bpos_lt(l, r) ? l : r;
+       return bkey_lt(l, r) ? l : r;
 }
 
-static inline struct bpos bpos_max(struct bpos l, struct bpos r)
+static inline struct bpos bkey_max(struct bpos l, struct bpos r)
 {
-       return bpos_gt(l, r) ? l : r;
+       return bkey_gt(l, r) ? l : r;
 }
 
 void bch2_bpos_swab(struct bpos *);
index 04051e45f4e0563fa15e28aa6a8ed920cdc97c63..8c951cfa74ae0ab5d75166acaf15a869d47f7164 100644 (file)
@@ -2022,10 +2022,8 @@ struct bkey_s_c bch2_btree_iter_peek_upto(struct btree_iter *iter, struct bpos e
                 */
                if (!(iter->flags & BTREE_ITER_IS_EXTENTS))
                        iter_pos = k.k->p;
-               else if (bkey_gt(bkey_start_pos(k.k), iter->pos))
-                       iter_pos = bkey_start_pos(k.k);
                else
-                       iter_pos = iter->pos;
+                       iter_pos = bkey_max(iter->pos, bkey_start_pos(k.k));
 
                if (bkey_gt(iter_pos, end)) {
                        bch2_btree_iter_set_pos(iter, end);