--- /dev/null
+From stable-bounces@linux.kernel.org Fri Mar 30 19:18:26 2007
+Date: Sat, 31 Mar 2007 12:14:37 +1000
+From: Herbert Xu <herbert@gondor.apana.org.au>
+To: Patrick McHardy <kaber@trash.net>
+Message-ID: <20070331021437.GA31298@gondor.apana.org.au>
+Cc: "J. Bruce Fields" <bfields@citi.umich.edu>
+Subject: CRYPTO api: Use the right value when advancing scatterwalk_copychunks
+
+In the scatterwalk_copychunks loop, We should be advancing by
+len_this_page and not nbytes. The latter is the total length.
+
+Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
+Signed-off-by: Chris Wright <chrisw@sous-sol.org>
+---
+ crypto/scatterwalk.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- linux-2.6.20.5.orig/crypto/scatterwalk.c
++++ linux-2.6.20.5/crypto/scatterwalk.c
+@@ -91,7 +91,7 @@ void scatterwalk_copychunks(void *buf, s
+ memcpy_dir(buf, vaddr, len_this_page, out);
+ scatterwalk_unmap(vaddr, out);
+
+- scatterwalk_advance(walk, nbytes);
++ scatterwalk_advance(walk, len_this_page);
+
+ if (nbytes == len_this_page)
+ break;