public inbox for linux-arm-kernel@lists.infradead.org
 help / color / mirror / Atom feed
* [PATCH] crypto: sun8i-ce-hash - Refine exception handling in sun8i_ce_hash_run()
@ 2025-04-09 11:43 Markus Elfring
  2025-04-09 12:36 ` Andre Przywara
  0 siblings, 1 reply; 7+ messages in thread
From: Markus Elfring @ 2025-04-09 11:43 UTC (permalink / raw)
  To: linux-sunxi, linux-crypto, linux-arm-kernel, Andre Przywara,
	Chen-Yu Tsai, Corentin Labbe, David S. Miller, Herbert Xu,
	Jernej Skrabec, Ovidiu Panait, Samuel Holland
  Cc: LKML, Julia Lawall

From: Markus Elfring <elfring@users.sourceforge.net>
Date: Wed, 9 Apr 2025 13:26:55 +0200

Two if branches contained duplicate source code.
Thus avoid the specification of repeated error code assignments by using
additional labels instead.

This issue was transformed by using the Coccinelle software.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
---
 drivers/crypto/allwinner/sun8i-ce/sun8i-ce-hash.c | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/drivers/crypto/allwinner/sun8i-ce/sun8i-ce-hash.c b/drivers/crypto/allwinner/sun8i-ce/sun8i-ce-hash.c
index ba13fb75c05d..7d31e190bb6a 100644
--- a/drivers/crypto/allwinner/sun8i-ce/sun8i-ce-hash.c
+++ b/drivers/crypto/allwinner/sun8i-ce/sun8i-ce-hash.c
@@ -399,14 +399,14 @@ int sun8i_ce_hash_run(struct crypto_engine *engine, void *breq)
 	}
 	if (len > 0) {
 		dev_err(ce->dev, "remaining len %d\n", len);
-		err = -EINVAL;
-		goto err_unmap_src;
+		goto e_inval_src;
 	}
 	addr_res = dma_map_single(ce->dev, result, digestsize, DMA_FROM_DEVICE);
 	cet->t_dst[0].addr = desc_addr_val_le32(ce, addr_res);
 	cet->t_dst[0].len = cpu_to_le32(digestsize / 4);
 	if (dma_mapping_error(ce->dev, addr_res)) {
 		dev_err(ce->dev, "DMA map dest\n");
+e_inval_src:
 		err = -EINVAL;
 		goto err_unmap_src;
 	}
@@ -428,16 +428,15 @@ int sun8i_ce_hash_run(struct crypto_engine *engine, void *breq)
 		j = hash_pad(bf, 2 * bs, j, byte_count, false, bs);
 		break;
 	}
-	if (!j) {
-		err = -EINVAL;
-		goto err_unmap_result;
-	}
+	if (!j)
+		goto e_inval_result;

 	addr_pad = dma_map_single(ce->dev, buf, j * 4, DMA_TO_DEVICE);
 	cet->t_src[i].addr = desc_addr_val_le32(ce, addr_pad);
 	cet->t_src[i].len = cpu_to_le32(j);
 	if (dma_mapping_error(ce->dev, addr_pad)) {
 		dev_err(ce->dev, "DMA error on padding SG\n");
+e_inval_result:
 		err = -EINVAL;
 		goto err_unmap_result;
 	}
--
2.49.0



^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2025-04-13  8:23 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-04-09 11:43 [PATCH] crypto: sun8i-ce-hash - Refine exception handling in sun8i_ce_hash_run() Markus Elfring
2025-04-09 12:36 ` Andre Przywara
2025-04-09 12:46   ` Markus Elfring
2025-04-13  7:45     ` Julian Calaby
2025-04-13  8:20       ` Markus Elfring
2025-04-10  6:42   ` [PATCH] " Jernej Škrabec
2025-04-10  9:51     ` Markus Elfring

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox