diff options
author | Dan Streetman <ddstreet@ieee.org> | 2015-05-12 01:53:36 +0300 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2015-05-13 05:31:59 +0300 |
commit | ca7fc7e962fa067ba31f76a6e5828537394f6481 (patch) | |
tree | e79e641598fdf90d30a76f9c761ab5041019f971 | |
parent | 42e8b0d7fed0628e21ec93e8cd547aef616e68f7 (diff) | |
download | linux-ca7fc7e962fa067ba31f76a6e5828537394f6481.tar.xz |
lib: correct 842 decompress for 32 bit
Avoid 64 bit mod operation, which won't work on 32 bit systems.
Simple subtraction can be used instead in this case.
Reported-By: Fengguang Wu <fengguang.wu@intel.com>
Signed-off-by: Dan Streetman <ddstreet@ieee.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
-rw-r--r-- | lib/842/842_decompress.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/842/842_decompress.c b/lib/842/842_decompress.c index dbeb0581b879..5446ff0c9ba0 100644 --- a/lib/842/842_decompress.c +++ b/lib/842/842_decompress.c @@ -185,7 +185,7 @@ static int __do_index(struct sw842_param *p, u8 size, u8 bits, u64 fsize) /* this is where the current fifo is */ u64 section = round_down(total, fsize); /* the current pos in the fifo */ - u64 pos = total % fsize; + u64 pos = total - section; /* if the offset is past/at the pos, we need to * go back to the last fifo section |