aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/crypto/qce/sha.c
diff options
context:
space:
mode:
authorJack Wang <jinpu.wang@ionos.com>2022-08-19 08:07:51 +0200
committerHerbert Xu <herbert@gondor.apana.org.au>2022-08-26 18:50:39 +0800
commit417f62f6402c985dde661c6b09734fddb33d9b1a (patch)
tree9de4197d66b263a3d5e7bbedfbf351d6a45e40ab /drivers/crypto/qce/sha.c
parentcrypto: sahara - Fix error check for dma_map_sg (diff)
downloadlinux-dev-417f62f6402c985dde661c6b09734fddb33d9b1a.tar.xz
linux-dev-417f62f6402c985dde661c6b09734fddb33d9b1a.zip
crypto: qce - Fix dma_map_sg error check
dma_map_sg return 0 on error, fix the error check and return -EIO to caller. Cc: Thara Gopinath <thara.gopinath@gmail.com> Cc: Herbert Xu <herbert@gondor.apana.org.au> Cc: "David S. Miller" <davem@davemloft.net> Cc: linux-crypto@vger.kernel.org Cc: linux-arm-msm@vger.kernel.org Cc: linux-kernel@vger.kernel.org Signed-off-by: Jack Wang <jinpu.wang@ionos.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/crypto/qce/sha.c')
-rw-r--r--drivers/crypto/qce/sha.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/crypto/qce/sha.c b/drivers/crypto/qce/sha.c
index 59159f5e64e5..37bafd7aeb79 100644
--- a/drivers/crypto/qce/sha.c
+++ b/drivers/crypto/qce/sha.c
@@ -97,14 +97,16 @@ static int qce_ahash_async_req_handle(struct crypto_async_request *async_req)
}
ret = dma_map_sg(qce->dev, req->src, rctx->src_nents, DMA_TO_DEVICE);
- if (ret < 0)
- return ret;
+ if (!ret)
+ return -EIO;
sg_init_one(&rctx->result_sg, qce->dma.result_buf, QCE_RESULT_BUF_SZ);
ret = dma_map_sg(qce->dev, &rctx->result_sg, 1, DMA_FROM_DEVICE);
- if (ret < 0)
+ if (!ret) {
+ ret = -EIO;
goto error_unmap_src;
+ }
ret = qce_dma_prep_sgs(&qce->dma, req->src, rctx->src_nents,
&rctx->result_sg, 1, qce_ahash_done, async_req);