[PATCH] crypto: scompress - Use crypto_unregister_scomps in crypto_register_scomps

Thorsten Blum posted 1 patch 5 days, 19 hours ago
There is a newer version of this series
crypto/scompress.c | 30 +++++++++++++-----------------
1 file changed, 13 insertions(+), 17 deletions(-)
[PATCH] crypto: scompress - Use crypto_unregister_scomps in crypto_register_scomps
Posted by Thorsten Blum 5 days, 19 hours ago
Define crypto_unregister_scomps() before crypto_register_scomps() and
replace the for loop with a call to crypto_unregister_scomps().  Return
'ret' immediately and remove the goto statement to simplify the error
handling code.  No functional changes.

Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
---
 crypto/scompress.c | 30 +++++++++++++-----------------
 1 file changed, 13 insertions(+), 17 deletions(-)

diff --git a/crypto/scompress.c b/crypto/scompress.c
index 1a7ed8ae65b0..3e026a6eefe8 100644
--- a/crypto/scompress.c
+++ b/crypto/scompress.c
@@ -377,34 +377,30 @@ void crypto_unregister_scomp(struct scomp_alg *alg)
 }
 EXPORT_SYMBOL_GPL(crypto_unregister_scomp);
 
+void crypto_unregister_scomps(struct scomp_alg *algs, int count)
+{
+	int i;
+
+	for (i = count - 1; i >= 0; --i)
+		crypto_unregister_scomp(&algs[i]);
+}
+EXPORT_SYMBOL_GPL(crypto_unregister_scomps);
+
 int crypto_register_scomps(struct scomp_alg *algs, int count)
 {
 	int i, ret;
 
 	for (i = 0; i < count; i++) {
 		ret = crypto_register_scomp(&algs[i]);
-		if (ret)
-			goto err;
+		if (ret) {
+			crypto_unregister_scomps(algs, i);
+			return ret;
+		}
 	}
 
 	return 0;
-
-err:
-	for (--i; i >= 0; --i)
-		crypto_unregister_scomp(&algs[i]);
-
-	return ret;
 }
 EXPORT_SYMBOL_GPL(crypto_register_scomps);
 
-void crypto_unregister_scomps(struct scomp_alg *algs, int count)
-{
-	int i;
-
-	for (i = count - 1; i >= 0; --i)
-		crypto_unregister_scomp(&algs[i]);
-}
-EXPORT_SYMBOL_GPL(crypto_unregister_scomps);
-
 MODULE_LICENSE("GPL");
 MODULE_DESCRIPTION("Synchronous compression type");
-- 
Thorsten Blum <thorsten.blum@linux.dev>
GPG: 1D60 735E 8AEF 3BE4 73B6  9D84 7336 78FD 8DFE EAD4
Re: [PATCH] crypto: scompress - Use crypto_unregister_scomps in crypto_register_scomps
Posted by Herbert Xu 5 days, 5 hours ago
On Wed, Dec 10, 2025 at 02:25:48PM +0100, Thorsten Blum wrote:
> Define crypto_unregister_scomps() before crypto_register_scomps() and
> replace the for loop with a call to crypto_unregister_scomps().  Return
> 'ret' immediately and remove the goto statement to simplify the error
> handling code.  No functional changes.
> 
> Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
> ---
>  crypto/scompress.c | 30 +++++++++++++-----------------
>  1 file changed, 13 insertions(+), 17 deletions(-)
> 
> diff --git a/crypto/scompress.c b/crypto/scompress.c
> index 1a7ed8ae65b0..3e026a6eefe8 100644
> --- a/crypto/scompress.c
> +++ b/crypto/scompress.c
> @@ -377,34 +377,30 @@ void crypto_unregister_scomp(struct scomp_alg *alg)
>  }
>  EXPORT_SYMBOL_GPL(crypto_unregister_scomp);
>  
> +void crypto_unregister_scomps(struct scomp_alg *algs, int count)
> +{
> +	int i;
> +
> +	for (i = count - 1; i >= 0; --i)
> +		crypto_unregister_scomp(&algs[i]);
> +}
> +EXPORT_SYMBOL_GPL(crypto_unregister_scomps);

There is no need to move this function.

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