Commit 9f116727 authored by Herbert Xu's avatar Herbert Xu

[CRYPTO] api: Flush the current page right than the next

On platforms where flush_dcache_page is needed we're currently flushing
the next page right than the one we've just processed.  This patch fixes
the off-by-one error.
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent 4ee531a3
...@@ -59,8 +59,12 @@ EXPORT_SYMBOL_GPL(scatterwalk_map); ...@@ -59,8 +59,12 @@ EXPORT_SYMBOL_GPL(scatterwalk_map);
static void scatterwalk_pagedone(struct scatter_walk *walk, int out, static void scatterwalk_pagedone(struct scatter_walk *walk, int out,
unsigned int more) unsigned int more)
{ {
if (out) if (out) {
flush_dcache_page(scatterwalk_page(walk)); struct page *page;
page = walk->sg->page + ((walk->offset - 1) >> PAGE_SHIFT);
flush_dcache_page(page);
}
if (more) { if (more) {
walk->offset += PAGE_SIZE - 1; walk->offset += PAGE_SIZE - 1;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment