Reported-by: [email protected]
Signed-off-by: Alan Huang <[email protected]>
---
 fs/bcachefs/btree_io.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/bcachefs/btree_io.c b/fs/bcachefs/btree_io.c
index e71b278672b6..0022529522f1 100644
--- a/fs/bcachefs/btree_io.c
+++ b/fs/bcachefs/btree_io.c
@@ -997,7 +997,7 @@ static int validate_bset_keys(struct bch_fs *c, struct 
btree *b,
                }
 got_good_key:
                le16_add_cpu(&i->u64s, -next_good_key);
-               memmove_u64s_down(k, bkey_p_next(k), (u64 *) vstruct_end(i) - 
(u64 *) k);
+               memmove_u64s_down(k, (u64 *) k + next_good_key, (u64 *) 
vstruct_end(i) - (u64 *) k - next_good_key);
                set_btree_node_need_rewrite(b);
        }
 fsck_err:
@@ -1259,7 +1259,7 @@ int bch2_btree_node_read_done(struct bch_fs *c, struct 
bch_dev *ca,
 
                        i->u64s = cpu_to_le16(le16_to_cpu(i->u64s) - k->u64s);
                        memmove_u64s_down(k, bkey_p_next(k),
-                                         (u64 *) vstruct_end(i) - (u64 *) k);
+                                         (u64 *) vstruct_end(i) - (u64 *) 
bkey_p_next(k));
                        set_btree_bset_end(b, b->set);
                        set_btree_node_need_rewrite(b);
                        continue;
-- 
2.47.0


Reply via email to