diff mbox series

crypto: rockchip - fix to check return value

Message ID 20240218221658.131043-1-kilian.zinnecker@mail.de (mailing list archive)
State Accepted
Delegated to: Herbert Xu
Headers show
Series crypto: rockchip - fix to check return value | expand

Commit Message

Kilian Zinnecker Feb. 18, 2024, 10:16 p.m. UTC
crypto_engine_alloc_init may fail, e.g., as result of a fail of
devm_kzalloc or kthread_create_worker. Other drivers (e.g.,
amlogic-gxl-core.c, aspeed-acry.c, aspeed-hace.c, jr.c, etc.) check
crypto_engine_alloc_init's return value and return -ENOMEM in case
a NULL pointer is returned. This patch inserts a corresponding
return value check to rk3288_crypto.c.

Signed-off-by: Kilian Zinnecker <kilian.zinnecker@mail.de>
---
 drivers/crypto/rockchip/rk3288_crypto.c | 5 +++++
 1 file changed, 5 insertions(+)

Comments

Herbert Xu Feb. 24, 2024, 12:52 a.m. UTC | #1
On Sun, Feb 18, 2024 at 11:16:58PM +0100, Kilian Zinnecker wrote:
> crypto_engine_alloc_init may fail, e.g., as result of a fail of
> devm_kzalloc or kthread_create_worker. Other drivers (e.g.,
> amlogic-gxl-core.c, aspeed-acry.c, aspeed-hace.c, jr.c, etc.) check
> crypto_engine_alloc_init's return value and return -ENOMEM in case
> a NULL pointer is returned. This patch inserts a corresponding
> return value check to rk3288_crypto.c.
> 
> Signed-off-by: Kilian Zinnecker <kilian.zinnecker@mail.de>
> ---
>  drivers/crypto/rockchip/rk3288_crypto.c | 5 +++++
>  1 file changed, 5 insertions(+)

Patch applied.  Thanks.
diff mbox series

Patch

diff --git a/drivers/crypto/rockchip/rk3288_crypto.c b/drivers/crypto/rockchip/rk3288_crypto.c
index 70edf40bc523..f74b3c81ba6d 100644
--- a/drivers/crypto/rockchip/rk3288_crypto.c
+++ b/drivers/crypto/rockchip/rk3288_crypto.c
@@ -371,6 +371,11 @@  static int rk_crypto_probe(struct platform_device *pdev)
 	}
 
 	crypto_info->engine = crypto_engine_alloc_init(&pdev->dev, true);
+	if (!crypto_info->engine) {
+		err = -ENOMEM;
+		goto err_crypto;
+	}
+
 	crypto_engine_start(crypto_info->engine);
 	init_completion(&crypto_info->complete);