UPSTREAM: crypto: x86/chacha - only unregister algorithms if registered

It's not valid to call crypto_unregister_skciphers() without a prior
call to crypto_register_skciphers().

Fixes: 84e03fa39fbe ("crypto: x86/chacha - expose SIMD ChaCha routine as library function")
Signed-off-by: Eric Biggers <ebiggers@google.com>
Acked-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
(cherry picked from commit b62755aed3a3f5ca9edd2718339ccea3b6bbbe57)
Bug: 152722841
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Change-Id: I646290d55727156bfafff149a81bdd245e981657
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
This commit is contained in:
Eric Biggers 2019-11-17 23:21:58 -08:00 • committed by Alexander Martinz
commit e13253986d
No known key found for this signature in database
GPG key ID: CF15BDD9A321A9B2

View file

@ -304,7 +304,8 @@ static int __init chacha_simd_mod_init(void)
static void __exit chacha_simd_mod_fini(void)
{
crypto_unregister_skciphers(algs, ARRAY_SIZE(algs));
if (boot_cpu_has(X86_FEATURE_SSSE3))
crypto_unregister_skciphers(algs, ARRAY_SIZE(algs));
}
module_init(chacha_simd_mod_init);