diff options
author | Russell King <rmk@dyn-67.arm.linux.org.uk> | 2008-04-19 12:17:29 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2008-04-19 12:17:29 -0400 |
commit | adf6d34e460387ee3e8f1e1875d52bff51212c7d (patch) | |
tree | 88ef100143e6184103a608f82dfd232bf6376eaf /crypto/xcbc.c | |
parent | d1964dab60ce7c104dd21590e987a8787db18051 (diff) | |
parent | 3760d31f11bfbd0ead9eaeb8573e0602437a9d7c (diff) |
Merge branch 'omap2-upstream' into devel
Diffstat (limited to 'crypto/xcbc.c')
-rw-r--r-- | crypto/xcbc.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/crypto/xcbc.c b/crypto/xcbc.c index 2feb0f239c38..b63b633e549c 100644 --- a/crypto/xcbc.c +++ b/crypto/xcbc.c | |||
@@ -116,13 +116,11 @@ static int crypto_xcbc_digest_update2(struct hash_desc *pdesc, | |||
116 | struct crypto_xcbc_ctx *ctx = crypto_hash_ctx_aligned(parent); | 116 | struct crypto_xcbc_ctx *ctx = crypto_hash_ctx_aligned(parent); |
117 | struct crypto_cipher *tfm = ctx->child; | 117 | struct crypto_cipher *tfm = ctx->child; |
118 | int bs = crypto_hash_blocksize(parent); | 118 | int bs = crypto_hash_blocksize(parent); |
119 | unsigned int i = 0; | ||
120 | 119 | ||
121 | do { | 120 | for (;;) { |
122 | 121 | struct page *pg = sg_page(sg); | |
123 | struct page *pg = sg_page(&sg[i]); | 122 | unsigned int offset = sg->offset; |
124 | unsigned int offset = sg[i].offset; | 123 | unsigned int slen = sg->length; |
125 | unsigned int slen = sg[i].length; | ||
126 | 124 | ||
127 | if (unlikely(slen > nbytes)) | 125 | if (unlikely(slen > nbytes)) |
128 | slen = nbytes; | 126 | slen = nbytes; |
@@ -182,8 +180,11 @@ static int crypto_xcbc_digest_update2(struct hash_desc *pdesc, | |||
182 | offset = 0; | 180 | offset = 0; |
183 | pg++; | 181 | pg++; |
184 | } | 182 | } |
185 | i++; | 183 | |
186 | } while (nbytes>0); | 184 | if (!nbytes) |
185 | break; | ||
186 | sg = scatterwalk_sg_next(sg); | ||
187 | } | ||
187 | 188 | ||
188 | return 0; | 189 | return 0; |
189 | } | 190 | } |