diff options
author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-03-30 23:40:56 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-03-30 23:40:56 -0400 |
commit | 755948cfca16c71b16e8ff4a9d4dd31b1c0bf923 (patch) | |
tree | 7a058cfafabba3a10f499f0af89ac2be68cfe6bf | |
parent | beff804d8dd360ccb4dd0096c9fd77a93fe9049e (diff) | |
parent | 9f1167272890c210399e6b8a32d7cf7295713f5d (diff) |
Merge master.kernel.org:/pub/scm/linux/kernel/git/herbert/crypto-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/herbert/crypto-2.6:
[CRYPTO] api: Flush the current page right than the next
[CRYPTO] api: Use the right value when advancing scatterwalk_copychunks
-rw-r--r-- | crypto/scatterwalk.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/crypto/scatterwalk.c b/crypto/scatterwalk.c index 0f76175f623f..81afd1790a1d 100644 --- a/crypto/scatterwalk.c +++ b/crypto/scatterwalk.c | |||
@@ -59,8 +59,12 @@ EXPORT_SYMBOL_GPL(scatterwalk_map); | |||
59 | static void scatterwalk_pagedone(struct scatter_walk *walk, int out, | 59 | static void scatterwalk_pagedone(struct scatter_walk *walk, int out, |
60 | unsigned int more) | 60 | unsigned int more) |
61 | { | 61 | { |
62 | if (out) | 62 | if (out) { |
63 | flush_dcache_page(scatterwalk_page(walk)); | 63 | struct page *page; |
64 | |||
65 | page = walk->sg->page + ((walk->offset - 1) >> PAGE_SHIFT); | ||
66 | flush_dcache_page(page); | ||
67 | } | ||
64 | 68 | ||
65 | if (more) { | 69 | if (more) { |
66 | walk->offset += PAGE_SIZE - 1; | 70 | walk->offset += PAGE_SIZE - 1; |