]> www.infradead.org Git - users/hch/misc.git/commitdiff
bcachefs: Fix memmove when move keys down
authorAlan Huang <mmpgouride@gmail.com>
Thu, 20 Feb 2025 10:56:08 +0000 (18:56 +0800)
committerKent Overstreet <kent.overstreet@linux.dev>
Thu, 20 Feb 2025 21:40:34 +0000 (16:40 -0500)
The fix alone doesn't fix [1], but should be applied before debugging
that.

[1] https://syzkaller.appspot.com/bug?extid=38a0cbd267eff2d286ff

Signed-off-by: Alan Huang <mmpgouride@gmail.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/btree_io.c

index e371e60e3133ef53e4ba7e203cc8cd0dcdab15ab..dece27d9db04e8b81ed7c56f237d86bb369957c7 100644 (file)
@@ -996,7 +996,7 @@ drop_this_key:
                }
 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);
                set_btree_node_need_rewrite(b);
        }
 fsck_err: