bcachefs: Fix bch2_journal_keys_peek_prev_min()
authorKent Overstreet <kent.overstreet@linux.dev>
Fri, 13 Jun 2025 18:53:42 +0000 (14:53 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Mon, 16 Jun 2025 02:11:55 +0000 (22:11 -0400)
this code is rarely invoked, so - we had a few bugs left from basing it
off of bch2_journal_keys_peek_max()...

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

index cf73987516448653db161ad02b49ef3936ae6659..de996c848e43b8996f2ac9a70db2ac74f9d98ee5 100644 (file)
@@ -141,8 +141,8 @@ search:
        if (!*idx)
                *idx = __bch2_journal_key_search(keys, btree_id, level, pos);
 
-       while (*idx &&
-              __journal_key_cmp(btree_id, level, end_pos, idx_to_key(keys, *idx - 1)) <= 0) {
+       while (*idx < keys->nr &&
+              __journal_key_cmp(btree_id, level, end_pos, idx_to_key(keys, *idx - 1)) >= 0) {
                (*idx)++;
                iters++;
                if (iters == 10) {