Files
linux/crypto
Toke Høiland-Jørgensen 42ca037d0c crypto: api - Demote BUG_ON() in crypto_unregister_alg() to a WARN_ON()
commit a543ada7db upstream.

The crypto_unregister_alg() function expects callers to ensure that any
algorithm that is unregistered has a refcnt of exactly 1, and issues a
BUG_ON() if this is not the case. However, there are in fact drivers that
will call crypto_unregister_alg() without ensuring that the refcnt has been
lowered first, most notably on system shutdown. This causes the BUG_ON() to
trigger, which prevents a clean shutdown and hangs the system.

To avoid such hangs on shutdown, demote the BUG_ON() in
crypto_unregister_alg() to a WARN_ON() with early return. Cc stable because
this problem was observed on a 6.2 kernel, cf the link below.

Link: https://lore.kernel.org/r/87r0tyq8ph.fsf@toke.dk
Cc: stable@vger.kernel.org
Signed-off-by: Toke Høiland-Jørgensen <toke@redhat.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-05-11 23:03:02 +09:00
..
2020-08-28 16:58:28 +10:00
2022-03-03 10:49:20 +12:00
2021-03-26 19:55:55 +11:00
2023-03-10 09:32:56 +01:00
2022-06-10 16:40:17 +08:00
2022-08-02 17:14:47 -06:00
2022-02-18 16:21:08 +11:00
2020-02-28 08:43:21 +08:00
2023-03-10 09:32:56 +01:00
2022-08-02 17:14:47 -06:00
2021-08-21 15:44:58 +08:00
2022-04-08 16:12:46 +08:00
2022-06-10 16:40:16 +08:00
2023-03-10 09:32:57 +01:00
2021-11-08 16:55:21 -08:00