[PATCHv2] crypto: cesa: check for sram_dma error

Rosen Penev posted 1 patch 1 week ago
drivers/crypto/marvell/cesa/cesa.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
[PATCHv2] crypto: cesa: check for sram_dma error
Posted by Rosen Penev 1 week ago
dma_map_resource() might fail. In such a case, don't call
dma_unmap_resource()

Fixes: 37d728f76c41 ("crypto: marvell/cesa - Fix DMA API misuse")
Signed-off-by: Rosen Penev <rosenp@gmail.com>
---
 v2: use dma_mapping_error(). Fix Fixes tag.
 drivers/crypto/marvell/cesa/cesa.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/crypto/marvell/cesa/cesa.c b/drivers/crypto/marvell/cesa/cesa.c
index 75d8ba23d9a2..92e977027c8a 100644
--- a/drivers/crypto/marvell/cesa/cesa.c
+++ b/drivers/crypto/marvell/cesa/cesa.c
@@ -406,7 +406,8 @@ static void mv_cesa_put_sram(struct platform_device *pdev, int idx)
 	if (engine->pool)
 		gen_pool_free(engine->pool, (unsigned long)engine->sram_pool,
 			      cesa->sram_size);
-	else
+	else if (engine->sram &&
+		 !dma_mapping_error(cesa->dev, engine->sram_dma))
 		dma_unmap_resource(cesa->dev, engine->sram_dma,
 				   cesa->sram_size, DMA_BIDIRECTIONAL, 0);
 }
-- 
2.55.0