From: Herbert Xu Date: Tue, 19 Nov 2019 09:41:31 +0000 (+0800) Subject: crypto: pcrypt - Fix user-after-free on module unload X-Git-Tag: v5.4.17~4 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=00d58d0b58bc721990215874f1e1e1a491846ebb;p=platform%2Fkernel%2Flinux-rpi.git crypto: pcrypt - Fix user-after-free on module unload commit 07bfd9bdf568a38d9440c607b72342036011f727 upstream. On module unload of pcrypt we must unregister the crypto algorithms first and then tear down the padata structure. As otherwise the crypto algorithms are still alive and can be used while the padata structure is being freed. Fixes: 5068c7a883d1 ("crypto: pcrypt - Add pcrypt crypto...") Cc: Signed-off-by: Herbert Xu Signed-off-by: Greg Kroah-Hartman --- diff --git a/crypto/pcrypt.c b/crypto/pcrypt.c index 543792e..81bbea7 100644 --- a/crypto/pcrypt.c +++ b/crypto/pcrypt.c @@ -362,11 +362,12 @@ err: static void __exit pcrypt_exit(void) { + crypto_unregister_template(&pcrypt_tmpl); + pcrypt_fini_padata(pencrypt); pcrypt_fini_padata(pdecrypt); kset_unregister(pcrypt_kset); - crypto_unregister_template(&pcrypt_tmpl); } subsys_initcall(pcrypt_init);