[PATCH] crypto: qce - simplify control flow in register functions

Thorsten Blum posted 1 patch 1 month, 2 weeks ago
drivers/crypto/qce/aead.c     | 9 ++++-----
drivers/crypto/qce/sha.c      | 9 ++++-----
drivers/crypto/qce/skcipher.c | 9 ++++-----
3 files changed, 12 insertions(+), 15 deletions(-)
[PATCH] crypto: qce - simplify control flow in register functions
Posted by Thorsten Blum 1 month, 2 weeks ago
Remove the goto statements and handle errors directly to simplify the
control flow in qce_aead_register(), qce_ahash_register(), and
qce_skcipher_register().

Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
---
 drivers/crypto/qce/aead.c     | 9 ++++-----
 drivers/crypto/qce/sha.c      | 9 ++++-----
 drivers/crypto/qce/skcipher.c | 9 ++++-----
 3 files changed, 12 insertions(+), 15 deletions(-)

diff --git a/drivers/crypto/qce/aead.c b/drivers/crypto/qce/aead.c
index 1647d2329982..db2e2d7bfd07 100644
--- a/drivers/crypto/qce/aead.c
+++ b/drivers/crypto/qce/aead.c
@@ -829,14 +829,13 @@ static int qce_aead_register(struct qce_device *qce)
 
 	for (i = 0; i < ARRAY_SIZE(aead_def); i++) {
 		ret = qce_aead_register_one(&aead_def[i], qce);
-		if (ret)
-			goto err;
+		if (ret) {
+			qce_aead_unregister(qce);
+			return ret;
+		}
 	}
 
 	return 0;
-err:
-	qce_aead_unregister(qce);
-	return ret;
 }
 
 const struct qce_algo_ops aead_ops = {
diff --git a/drivers/crypto/qce/sha.c b/drivers/crypto/qce/sha.c
index 87071f315088..915ba2dcc660 100644
--- a/drivers/crypto/qce/sha.c
+++ b/drivers/crypto/qce/sha.c
@@ -527,14 +527,13 @@ static int qce_ahash_register(struct qce_device *qce)
 
 	for (i = 0; i < ARRAY_SIZE(ahash_def); i++) {
 		ret = qce_ahash_register_one(&ahash_def[i], qce);
-		if (ret)
-			goto err;
+		if (ret) {
+			qce_ahash_unregister(qce);
+			return ret;
+		}
 	}
 
 	return 0;
-err:
-	qce_ahash_unregister(qce);
-	return ret;
 }
 
 const struct qce_algo_ops ahash_ops = {
diff --git a/drivers/crypto/qce/skcipher.c b/drivers/crypto/qce/skcipher.c
index b9a931037fdc..6e6c5f4b33a5 100644
--- a/drivers/crypto/qce/skcipher.c
+++ b/drivers/crypto/qce/skcipher.c
@@ -511,14 +511,13 @@ static int qce_skcipher_register(struct qce_device *qce)
 
 	for (i = 0; i < ARRAY_SIZE(skcipher_def); i++) {
 		ret = qce_skcipher_register_one(&skcipher_def[i], qce);
-		if (ret)
-			goto err;
+		if (ret) {
+			qce_skcipher_unregister(qce);
+			return ret;
+		}
 	}
 
 	return 0;
-err:
-	qce_skcipher_unregister(qce);
-	return ret;
 }
 
 const struct qce_algo_ops skcipher_ops = {
Re: [PATCH] crypto: qce - simplify control flow in register functions
Posted by Herbert Xu 3 weeks, 3 days ago
On Sat, Aug 15, 2026 at 05:09:47PM +0200, Thorsten Blum wrote:
> Remove the goto statements and handle errors directly to simplify the
> control flow in qce_aead_register(), qce_ahash_register(), and
> qce_skcipher_register().
> 
> Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
> ---
>  drivers/crypto/qce/aead.c     | 9 ++++-----
>  drivers/crypto/qce/sha.c      | 9 ++++-----
>  drivers/crypto/qce/skcipher.c | 9 ++++-----
>  3 files changed, 12 insertions(+), 15 deletions(-)

Patch applied.  Thanks.
-- 
Email: Herbert Xu <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
Re: [PATCH] crypto: qce - simplify control flow in register functions
Posted by Bartosz Golaszewski 1 month ago
On Sat, 15 Aug 2026 17:09:47 +0200, Thorsten Blum
<thorsten.blum@linux.dev> said:
> Remove the goto statements and handle errors directly to simplify the
> control flow in qce_aead_register(), qce_ahash_register(), and
> qce_skcipher_register().
>
> Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
> ---

Reviewed-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>