]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
crypto: shash - Use unregister_shashes in register_shashes
authorThorsten Blum <thorsten.blum@linux.dev>
Fri, 19 Dec 2025 14:51:19 +0000 (15:51 +0100)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 23 Jan 2026 05:48:42 +0000 (13:48 +0800)
Replace the for loop with a call to crypto_unregister_shashes(). 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>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/shash.c

index 4721f5f134f4dae8abbe42e29d2affc07d60e1e2..5238e0def4fd2128e2c9c2ad7ee36aa367f1ae24 100644 (file)
@@ -542,17 +542,13 @@ int crypto_register_shashes(struct shash_alg *algs, int count)
 
        for (i = 0; i < count; i++) {
                ret = crypto_register_shash(&algs[i]);
-               if (ret)
-                       goto err;
+               if (ret) {
+                       crypto_unregister_shashes(algs, i);
+                       return ret;
+               }
        }
 
        return 0;
-
-err:
-       for (--i; i >= 0; --i)
-               crypto_unregister_shash(&algs[i]);
-
-       return ret;
 }
 EXPORT_SYMBOL_GPL(crypto_register_shashes);