]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
bcachefs: Fix bch2_btree_iter_peek_slot() assertion
authorKent Overstreet <kent.overstreet@gmail.com>
Tue, 6 Jul 2021 02:08:28 +0000 (22:08 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Sun, 22 Oct 2023 21:09:07 +0000 (17:09 -0400)
This assertion is checking that what the iterator points to is
consistent with iter->real_pos, and since it's an internal btree
ordering property it should be using bpos_cmp.

Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
fs/bcachefs/btree_iter.c

index 8d42feae070affe22d70a3508a5a1cee84196964..1592929178bfa84659c37514a706eb9c95f0d773 100644 (file)
@@ -1859,7 +1859,7 @@ struct bkey_s_c bch2_btree_iter_peek_slot(struct btree_iter *iter)
                switch (btree_iter_type(iter)) {
                case BTREE_ITER_KEYS:
                        k = btree_iter_level_peek_all(iter, &iter->l[0]);
-                       EBUG_ON(k.k && bkey_deleted(k.k) && bkey_cmp(k.k->p, iter->pos) == 0);
+                       EBUG_ON(k.k && bkey_deleted(k.k) && bpos_cmp(k.k->p, iter->pos) == 0);
                        break;
                case BTREE_ITER_CACHED:
                        ck = (void *) iter->l[0].b;