Hi:

While merging the ahash patch I found this buglet in cryptd.

commit 34fe02eec1cf26f67070588a63252ca7a38c55c2
Author: Herbert Xu <[EMAIL PROTECTED]>
Date:   Wed May 7 21:10:13 2008 +0800

    [CRYPTO] cryptd: Fix EINPROGRESS notification context
    
    The EINPROGRESS notifications should be done just like the final
    call-backs, i.e., with BH off.  This patch fixes the call in cryptd
    since previously it was called with BH on.
    
    Signed-off-by: Herbert Xu <[EMAIL PROTECTED]>

diff --git a/crypto/cryptd.c b/crypto/cryptd.c
index b150de5..f38e147 100644
--- a/crypto/cryptd.c
+++ b/crypto/cryptd.c
@@ -82,10 +82,8 @@ static void cryptd_blkcipher_crypt(struct ablkcipher_request 
*req,
 
        rctx = ablkcipher_request_ctx(req);
 
-       if (unlikely(err == -EINPROGRESS)) {
-               rctx->complete(&req->base, err);
-               return;
-       }
+       if (unlikely(err == -EINPROGRESS))
+               goto out;
 
        desc.tfm = child;
        desc.info = req->info;
@@ -95,8 +93,9 @@ static void cryptd_blkcipher_crypt(struct ablkcipher_request 
*req,
 
        req->base.complete = rctx->complete;
 
+out:
        local_bh_disable();
-       req->base.complete(&req->base, err);
+       rctx->complete(&req->base, err);
        local_bh_enable();
 }

Cheers,
-- 
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <[EMAIL PROTECTED]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
To unsubscribe from this list: send the line "unsubscribe linux-crypto" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to