ANDROID: dm verity fec: fix RS block calculation
A call to do_div was changed in Linux 4.5 to div64_u64 in
verity_fec_decode, which broke RS block calculation due to
incompatible semantics. This change fixes the computation.
Bug: 21893453
Change-Id: Idb88b901e0209c2cccc9c0796689f780592d58f9
Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
(cherry picked from commit 879aac93eebcc2862d71afa9eca3a0c0f51b3b01)
Git-commit: 8f9576b381
Git-repo: https://android.googlesource.com/kernel/common
Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>
This commit is contained in:
parent
c1d1dd3794
commit
ade8ed0d7d
1 changed files with 1 additions and 3 deletions
|
@ -463,9 +463,7 @@ int verity_fec_decode(struct dm_verity *v, struct dm_verity_io *io,
|
|||
*/
|
||||
|
||||
offset = block << v->data_dev_block_bits;
|
||||
|
||||
res = offset;
|
||||
div64_u64(res, v->fec->rounds << v->data_dev_block_bits);
|
||||
res = div64_u64(offset, v->fec->rounds << v->data_dev_block_bits);
|
||||
|
||||
/*
|
||||
* The base RS block we can feed to the interleaver to find out all
|
||||
|
|
Loading…
Add table
Reference in a new issue