| From 802a6fe1b7b7cf19450c29fb349017694f620776 Mon Sep 17 00:00:00 2001 |
| From: "David S. Miller" <davem@davemloft.net> |
| Date: Wed, 19 Dec 2012 15:44:31 -0800 |
| Subject: sparc64: Set CRYPTO_TFM_REQ_MAY_SLEEP consistently in CAMELLIA code. |
| |
| |
| From: "David S. Miller" <davem@davemloft.net> |
| |
| [ Upstream commit 62ba63dc892cf836ecb9ce4fdb7644d45c95070b ] |
| |
| We use the FPU and therefore cannot sleep during the crypto |
| loops. |
| |
| Signed-off-by: David S. Miller <davem@davemloft.net> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| arch/sparc/crypto/camellia_glue.c | 3 +++ |
| 1 file changed, 3 insertions(+) |
| |
| --- a/arch/sparc/crypto/camellia_glue.c |
| +++ b/arch/sparc/crypto/camellia_glue.c |
| @@ -98,6 +98,7 @@ static int __ecb_crypt(struct blkcipher_ |
| |
| blkcipher_walk_init(&walk, dst, src, nbytes); |
| err = blkcipher_walk_virt(desc, &walk); |
| + desc->flags &= ~CRYPTO_TFM_REQ_MAY_SLEEP; |
| |
| if (encrypt) |
| key = &ctx->encrypt_key[0]; |
| @@ -160,6 +161,7 @@ static int cbc_encrypt(struct blkcipher_ |
| |
| blkcipher_walk_init(&walk, dst, src, nbytes); |
| err = blkcipher_walk_virt(desc, &walk); |
| + desc->flags &= ~CRYPTO_TFM_REQ_MAY_SLEEP; |
| |
| key = &ctx->encrypt_key[0]; |
| camellia_sparc64_load_keys(key, ctx->key_len); |
| @@ -198,6 +200,7 @@ static int cbc_decrypt(struct blkcipher_ |
| |
| blkcipher_walk_init(&walk, dst, src, nbytes); |
| err = blkcipher_walk_virt(desc, &walk); |
| + desc->flags &= ~CRYPTO_TFM_REQ_MAY_SLEEP; |
| |
| key = &ctx->decrypt_key[0]; |
| camellia_sparc64_load_keys(key, ctx->key_len); |