[PATCH] clk: keystone: sci-clk: check devm_kmalloc_array() return value

Alexandra Diupina adiupina at astralinux.ru
Wed Jan 10 05:46:21 PST 2024


devm_kmalloc_array() may return NULL, so
check return value to avoid null pointer
dereferencing

Found by Linux Verification Center (linuxtesting.org) with SVACE.

Fixes: 3c13933c6033 ("clk: keystone: sci-clk: add support for dynamically probing clocks")
Signed-off-by: Alexandra Diupina <adiupina at astralinux.ru>
---
 drivers/clk/keystone/sci-clk.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/clk/keystone/sci-clk.c b/drivers/clk/keystone/sci-clk.c
index 35fe197dd303..a2fa24e4f88a 100644
--- a/drivers/clk/keystone/sci-clk.c
+++ b/drivers/clk/keystone/sci-clk.c
@@ -459,6 +459,9 @@ static int ti_sci_scan_clocks_from_fw(struct sci_clk_provider *provider)
 			tmp_clks = devm_kmalloc_array(dev, max_clks + 64,
 						      sizeof(sci_clk),
 						      GFP_KERNEL);
+			if (!tmp_clks)
+				return -ENOMEM;
+
 			memcpy(tmp_clks, clks, max_clks * sizeof(sci_clk));
 			if (max_clks)
 				devm_kfree(dev, clks);
-- 
2.30.2




More information about the linux-arm-kernel mailing list