]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
crypto: rng - Use unregister_rngs in register_rngs
authorThorsten Blum <thorsten.blum@linux.dev>
Mon, 26 Jan 2026 17:50:18 +0000 (18:50 +0100)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 6 Feb 2026 10:52:22 +0000 (18:52 +0800)
Replace the for loop with a call to crypto_unregister_rngs(). 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/rng.c

index 5982dcea1010b2f09c3a6240b4db3eb5f2119e69..c6165c8eb38735650e2069a586b8222da3888729 100644 (file)
@@ -202,17 +202,13 @@ int crypto_register_rngs(struct rng_alg *algs, int count)
 
        for (i = 0; i < count; i++) {
                ret = crypto_register_rng(algs + i);
-               if (ret)
-                       goto err;
+               if (ret) {
+                       crypto_unregister_rngs(algs, i);
+                       return ret;
+               }
        }
 
        return 0;
-
-err:
-       for (--i; i >= 0; --i)
-               crypto_unregister_rng(algs + i);
-
-       return ret;
 }
 EXPORT_SYMBOL_GPL(crypto_register_rngs);