sparc64: Set CRYPTO_TFM_REQ_MAY_SLEEP consistently in CAMELLIA code.
authorDavid S. Miller <davem@davemloft.net>
Wed, 19 Dec 2012 23:44:31 +0000 (15:44 -0800)
committerDavid S. Miller <davem@davemloft.net>
Wed, 19 Dec 2012 23:44:31 +0000 (15:44 -0800)
We use the FPU and therefore cannot sleep during the crypto
loops.

Signed-off-by: David S. Miller <davem@davemloft.net>
arch/sparc/crypto/camellia_glue.c

index 62c89af3fd3fb3793a9dc0af63244fd94e7d808e..888f6260b4ec5169d36c23860a6f0bc70c5f5404 100644 (file)
@@ -98,6 +98,7 @@ static int __ecb_crypt(struct blkcipher_desc *desc,
 
        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_desc *desc,
 
        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_desc *desc,
 
        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);