linux/drivers/crypto
Bartosz Golaszewski e914b2f795 crypto: qce - unregister previously registered algos in error path
commit e80cf84b60 upstream.

If we encounter an error when registering alorithms with the crypto
framework, we just bail out and don't unregister the ones we
successfully registered in prior iterations of the loop.

Add code that goes back over the algos and unregisters them before
returning an error from qce_register_algs().

Cc: stable@vger.kernel.org
Fixes: ec8f5d8f6f ("crypto: qce - Qualcomm crypto engine driver")
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2025-02-17 09:40:35 +01:00
..
allwinner crypto: sun8i-ce - Fix use after free in unprepare 2024-04-03 15:28:40 +02:00
amcc crypto: crypto4xx - remove unnecessary (void*) conversions 2023-03-24 18:22:28 +08:00
amlogic crypto: drivers - Explicitly include correct DT includes 2023-08-23 11:04:23 +08:00
aspeed crypto: drivers - Explicitly include correct DT includes 2023-08-23 11:04:23 +08:00
axis crypto: artpec6 - Use request_complete helpers 2023-02-13 18:34:49 +08:00
bcm crypto: bcm - add error check in the ahash_hmac_init function 2024-12-09 10:31:49 +01:00
caam crypto: caam - use JobR's space to access page 0 regs 2025-02-08 09:52:05 +01:00
cavium crypto: cavium - Fix an error handling path in cpt_ucode_load_fw() 2024-12-09 10:31:50 +01:00
ccp crypto: ccp - Properly unregister /dev/sev on sev PLATFORM_STATUS failure 2024-10-04 16:29:51 +02:00
ccree crypto: drivers - Explicitly include correct DT includes 2023-08-23 11:04:23 +08:00
chelsio crypto: chelsio - Remove unused declarations 2023-08-25 18:46:55 +08:00
gemini crypto: drivers - Explicitly include correct DT includes 2023-08-23 11:04:23 +08:00
hisilicon crypto: hisilicon/sec2 - fix for aead invalid authsize 2025-02-08 09:52:06 +01:00
inside-secure crypto: inside-secure - Fix the return value of safexcel_xcbcmac_cra_init() 2024-12-09 10:31:48 +01:00
intel crypto: ixp4xx - fix OF node reference leaks in init_ixp_crypto() 2025-02-08 09:52:06 +01:00
marvell crypto: marvell/cesa - Disable hash algorithms 2024-11-17 15:08:56 +01:00
nx crypto: nx - fix build warnings when DEBUG_FS is not enabled 2023-05-24 18:12:33 +08:00
qce crypto: qce - unregister previously registered algos in error path 2025-02-17 09:40:35 +01:00
rockchip crypto: rk3288 - Fix use after free in unprepare 2024-04-03 15:28:40 +02:00
starfive crypto: starfive - Fix nent assignment in rsa dec 2024-09-12 11:11:43 +02:00
stm32 crypto: stm32/cryp - call finalize with bh disabled 2024-09-08 07:54:46 +02:00
virtio crypto: virtio/akcipher - Fix stack overflow on memcpy 2024-03-01 13:35:01 +01:00
vmx Merge branch 'topic/objtool' into next 2022-12-08 23:57:47 +11:00
xilinx crypto: xilinx - call finalize with bh disabled 2024-03-26 18:19:46 -04:00
atmel-aes-regs.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
atmel-aes.c crypto: drivers - Explicitly include correct DT includes 2023-08-23 11:04:23 +08:00
atmel-authenc.h crypto: sha - split sha.h into sha1.h and sha2.h 2020-11-20 14:45:33 +11:00
atmel-ecc.c crypto: drivers - Explicitly include correct DT includes 2023-08-23 11:04:23 +08:00
atmel-i2c.c This update includes the following changes: 2023-02-21 18:10:50 -08:00
atmel-i2c.h This update includes the following changes: 2023-02-21 18:10:50 -08:00
atmel-sha-regs.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
atmel-sha.c crypto: drivers - Explicitly include correct DT includes 2023-08-23 11:04:23 +08:00
atmel-sha204a.c crypto: atmel - Switch i2c drivers back to use .probe() 2023-06-02 18:21:32 +08:00
atmel-tdes-regs.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
atmel-tdes.c crypto: drivers - Explicitly include correct DT includes 2023-08-23 11:04:23 +08:00
exynos-rng.c crypto: drivers - Explicitly include correct DT includes 2023-08-23 11:04:23 +08:00
geode-aes.c crypto: geode - use DEFINE_SPINLOCK() for spinlock 2021-04-16 21:16:31 +10:00
geode-aes.h crypto: geode-aes - convert to skcipher API and make thread-safe 2019-10-23 19:46:56 +11:00
hifn_795x.c crypto: drivers - remove unnecessary (void*) conversions 2023-03-24 18:22:28 +08:00
img-hash.c crypto: drivers - Explicitly include correct DT includes 2023-08-23 11:04:23 +08:00
Kconfig s390/zcrypt: remove CEX2 and CEX3 device drivers 2023-07-24 12:12:22 +02:00
Makefile crypto: starfive - Add crypto engine support 2023-05-19 16:46:22 +08:00
mxs-dcp.c crypto: mxs-dcp - Use the devm_clk_get_optional_enabled() helper 2023-03-31 17:50:09 +08:00
n2_asm.S License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
n2_core.c crypto: drivers - Explicitly include correct DT includes 2023-08-23 11:04:23 +08:00
n2_core.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
omap-aes-gcm.c crypto: omap - Use new crypto_engine_op interface 2023-08-18 17:01:11 +08:00
omap-aes.c crypto: drivers - Explicitly include correct DT includes 2023-08-23 11:04:23 +08:00
omap-aes.h crypto: omap - Use new crypto_engine_op interface 2023-08-18 17:01:11 +08:00
omap-crypto.c crypto: omap - Avoid redundant copy when using truncated sg list 2021-08-21 15:44:53 +08:00
omap-crypto.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
omap-des.c crypto: drivers - Explicitly include correct DT includes 2023-08-23 11:04:23 +08:00
omap-sham.c crypto: drivers - Explicitly include correct DT includes 2023-08-23 11:04:23 +08:00
padlock-aes.c crypto: algapi - Remove skbuff.h inclusion 2020-08-20 14:04:28 +10:00
padlock-sha.c crypto: sha - split sha.h into sha1.h and sha2.h 2020-11-20 14:45:33 +11:00
qcom-rng.c crypto: qcom-rng: Make the core clock optional regardless of ACPI presence 2023-08-18 17:01:09 +08:00
s5p-sss.c crypto: drivers - Explicitly include correct DT includes 2023-08-23 11:04:23 +08:00
sa2ul.c crypto: sa2ul - Return crypto_aead_setkey to transfer the error 2024-01-25 15:35:16 -08:00
sa2ul.h crypto: sa2ul - change unsafe data size limit to 255 bytes 2023-05-19 16:45:43 +08:00
sahara.c crypto: sahara - do not resize req->src when doing hash operations 2024-01-25 15:35:18 -08:00
talitos.c crypto: drivers - Explicitly include correct DT includes 2023-08-23 11:04:23 +08:00
talitos.h crypto: talitos - Replace zero-length arrays with DECLARE_FLEX_ARRAY() helper 2022-10-21 19:05:24 +08:00