WSL2-Linux-Kernel/drivers/crypto/qat
Herbert Xu 3fb4601e0d crypto: qat - Fix ADF_DEV_RESET_SYNC memory leak
commit d3b17c6d9dddc2db3670bc9be628b122416a3d26 upstream.

Using completion_done to determine whether the caller has gone
away only works after a complete call.  Furthermore it's still
possible that the caller has not yet called wait_for_completion,
resulting in another potential UAF.

Fix this by making the caller use cancel_work_sync and then freeing
the memory safely.

Fixes: 7d42e097607c ("crypto: qat - resolve race condition during AER recovery")
Cc: <stable@vger.kernel.org> #6.8+
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Reviewed-by: Giovanni Cabiddu <giovanni.cabiddu@intel.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-06-16 13:39:58 +02:00
..
qat_4xxx crypto: qat - re-enable registration of algorithms 2022-07-29 17:25:28 +02:00
qat_c3xxx crypto: qat - remove the unnecessary get_vintmsk_offset() 2021-08-21 15:44:56 +08:00
qat_c3xxxvf crypto: qat - flush vf workqueue at driver removal 2021-08-21 15:44:56 +08:00
qat_c62x crypto: qat - remove the unnecessary get_vintmsk_offset() 2021-08-21 15:44:56 +08:00
qat_c62xvf crypto: qat - flush vf workqueue at driver removal 2021-08-21 15:44:56 +08:00
qat_common crypto: qat - Fix ADF_DEV_RESET_SYNC memory leak 2024-06-16 13:39:58 +02:00
qat_dh895xcc crypto: qat - set COMPRESSION capability for DH895XCC 2022-06-09 10:23:05 +02:00
qat_dh895xccvf crypto: qat - flush vf workqueue at driver removal 2021-08-21 15:44:56 +08:00
Kconfig crypto: qat - replace CRYPTO_AES with CRYPTO_LIB_AES in Kconfig 2021-01-14 17:10:25 +11:00
Makefile crypto: qat - add qat_4xxx driver 2020-11-20 14:45:34 +11:00