Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 779bb362 authored by Sunwook Eom's avatar Sunwook Eom Committed by Greg Kroah-Hartman
Browse files

dm verity fec: fix hash block number in verity_fec_decode



commit ad4e80a639fc61d5ecebb03caa5cdbfb91fcebfc upstream.

The error correction data is computed as if data and hash blocks
were concatenated. But hash block number starts from v->hash_start.
So, we have to calculate hash block number based on that.

Fixes: a739ff3f ("dm verity: add support for forward error correction")
Cc: stable@vger.kernel.org
Signed-off-by: default avatarSunwook Eom <speed.eom@samsung.com>
Reviewed-by: default avatarSami Tolvanen <samitolvanen@google.com>
Signed-off-by: default avatarMike Snitzer <snitzer@redhat.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 9199193d
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -447,7 +447,7 @@ int verity_fec_decode(struct dm_verity *v, struct dm_verity_io *io,
	fio->level++;

	if (type == DM_VERITY_BLOCK_TYPE_METADATA)
		block += v->data_blocks;
		block = block - v->hash_start + v->data_blocks;

	/*
	 * For RS(M, N), the continuous FEC data is divided into blocks of N