From: Herbert Xu Date: Tue, 12 Jul 2016 05:17:58 +0000 (+0800) Subject: crypto: scatterwalk - Remove unnecessary advance in scatterwalk_pagedone X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=28cf86fafdd663cfcad3c5a5fe9869f1fa01b472;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git 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 --- 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)