aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lendacky2014-02-24 08:42:08 -0600
committerHerbert Xu2014-02-27 05:57:00 +0800
commit950b10bae656d7edf5e2047bf0c9205980f49f2c (patch)
treedfacda484d4c76885e129bec9254ed5da892515d
parent0611451b4e78ecb77b3323657f2ab4aadd6d28b3 (diff)
crypto: ccp - Invoke context callback when there is a backlog error
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>
-rw-r--r--drivers/crypto/ccp/ccp-crypto-main.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/crypto/ccp/ccp-crypto-main.c b/drivers/crypto/ccp/ccp-crypto-main.c
index 9d30d6fbfd3d..7d98635c2c5e 100644
--- a/drivers/crypto/ccp/ccp-crypto-main.c
+++ b/drivers/crypto/ccp/ccp-crypto-main.c
@@ -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);