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

Commit 422ca860 authored by Arve Hjønnevåg's avatar Arve Hjønnevåg Committed by Anton Vorontsov
Browse files

pstore/ram: Include ecc_size when calculating ecc_block



Wastes less memory and allows using more memory for ecc than data.

Signed-off-by: default avatarArve Hjønnevåg <arve@android.com>
[jstultz: Tweaked commit subject]
Signed-off-by: default avatarJohn Stultz <john.stultz@linaro.org>
Acked-by: default avatarKees Cook <keescook@chromium.org>
Signed-off-by: default avatarAnton Vorontsov <anton@enomsg.org>
parent c5302672
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -187,7 +187,8 @@ static int persistent_ram_init_ecc(struct persistent_ram_zone *prz,
	prz->ecc_block_size = 128;
	prz->ecc_size = ecc_size;

	ecc_blocks = DIV_ROUND_UP(prz->buffer_size, prz->ecc_block_size);
	ecc_blocks = DIV_ROUND_UP(prz->buffer_size - prz->ecc_size,
				  prz->ecc_block_size + prz->ecc_size);
	ecc_total = (ecc_blocks + 1) * prz->ecc_size;
	if (ecc_total >= prz->buffer_size) {
		pr_err("%s: invalid ecc_size %u (total %zu, buffer size %zu)\n",