summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHerbert Xu <herbert@gondor.apana.org.au>2016-07-12 13:17:58 +0800
committerHerbert Xu <herbert@gondor.apana.org.au>2016-07-18 17:35:50 +0800
commit28cf86fafdd663cfcad3c5a5fe9869f1fa01b472 (patch)
treef7f76d40389544bd7f54b4c590374300283cc29f
parent5f070e81bee35f1b7bd1477bb223a873ff657803 (diff)
downloadlinux-28cf86fafdd663cfcad3c5a5fe9869f1fa01b472.tar.bz2
crypto: scatterwalk - Remove unnecessary advance in scatterwalk_pagedone
The offset advance in scatterwalk_pagedone not only is unnecessary, but it was also buggy when it was needed by scatterwalk_copychunks. As the latter has long ago been fixed to call scatterwalk_advance directly, we can remove this unnecessary offset adjustment. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
-rw-r--r--crypto/scatterwalk.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/crypto/scatterwalk.c b/crypto/scatterwalk.c
index 52aae2974794..2ec5368ed649 100644
--- a/crypto/scatterwalk.c
+++ b/crypto/scatterwalk.c
@@ -62,12 +62,8 @@ static void scatterwalk_pagedone(struct scatter_walk *walk, int out,
flush_dcache_page(page);
}
- if (more) {
- walk->offset += PAGE_SIZE - 1;
- walk->offset &= PAGE_MASK;
- if (walk->offset >= walk->sg->offset + walk->sg->length)
- scatterwalk_start(walk, sg_next(walk->sg));
- }
+ if (more && walk->offset >= walk->sg->offset + walk->sg->length)
+ scatterwalk_start(walk, sg_next(walk->sg));
}
void scatterwalk_done(struct scatter_walk *walk, int out, int more)