crypto: ccp - Invoke context callback when there is a backlog error
authorTom Lendacky <thomas.lendacky@amd.com>
Mon, 24 Feb 2014 14:42:08 +0000 (08:42 -0600)
committerHerbert Xu <herbert@gondor.apana.org.au>
Wed, 26 Feb 2014 21:57:00 +0000 (05:57 +0800)
Invoke the callback routine associated with the crypto context
if an error is encountered sending the command to the CCP during
backlog processing.  This is needed to free any resources used
by the command.

Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/ccp/ccp-crypto-main.c

index 9d30d6f..7d98635 100644 (file)
@@ -183,6 +183,9 @@ static void ccp_crypto_complete(void *data, int err)
                        break;
 
                /* Error occurred, report it and get the next entry */
+               ctx = crypto_tfm_ctx(held->req->tfm);
+               if (ctx->complete)
+                       ret = ctx->complete(held->req, ret);
                held->req->complete(held->req, ret);
 
                next = ccp_crypto_cmd_complete(held, &backlog);