clk: clocking-wizard: check return value of devm_kasprintf()
authorClaudiu Beznea <claudiu.beznea@microchip.com>
Tue, 30 May 2023 09:39:13 +0000 (12:39 +0300)
committerStephen Boyd <sboyd@kernel.org>
Sat, 17 Jun 2023 04:52:50 +0000 (21:52 -0700)
devm_kasprintf() returns a pointer to dynamically allocated memory.
Pointer could be NULL in case allocation fails. Check pointer validity.
Identified with coccinelle (kmerr.cocci script).

Fixes: 2046338dcbc6 ("ARM: mxs: Use soc bus infrastructure")
Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
Link: https://lore.kernel.org/r/20230530093913.1656095-9-claudiu.beznea@microchip.com
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
drivers/clk/xilinx/clk-xlnx-clock-wizard.c

index e83f104fad029815ee245531cdac8413eaef2349..20e0e91552bc115031e98f3ae3f975b66e9f872d 100644 (file)
@@ -648,6 +648,11 @@ static int clk_wzrd_probe(struct platform_device *pdev)
        }
 
        clkout_name = devm_kasprintf(&pdev->dev, GFP_KERNEL, "%s_out0", dev_name(&pdev->dev));
+       if (!clkout_name) {
+               ret = -ENOMEM;
+               goto err_disable_clk;
+       }
+
        if (nr_outputs == 1) {
                clk_wzrd->clkout[0] = clk_wzrd_register_divider
                                (&pdev->dev, clkout_name,