Commit c4333eb5 authored by Kent Overstreet's avatar Kent Overstreet
Browse files

bcachefs: Fix check_snapshot() memcpy



check_snapshot() copies the bch_snapshot to a temporary to easily handle
older versions that don't have all the fields of the current version,
but it lacked a min() to correctly handle keys newer and larger than the
current version.

Signed-off-by: default avatarKent Overstreet <kent.overstreet@linux.dev>
parent 097471f9
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -728,7 +728,7 @@ static int check_snapshot(struct btree_trans *trans,
		return 0;

	memset(&s, 0, sizeof(s));
	memcpy(&s, k.v, bkey_val_bytes(k.k));
	memcpy(&s, k.v, min(sizeof(s), bkey_val_bytes(k.k)));

	id = le32_to_cpu(s.parent);
	if (id) {