Skip to content

Commit fb4ac6f

Browse files
krzkgregkh
authored andcommitted
clk: imx: scu: Fix kfree() of static memory on setting driver_override
The driver_override field from platform driver should not be initialized from static memory (string literal) because the core later kfree() it, for example when driver_override is set via sysfs. Use dedicated helper to set driver_override properly. Fixes: 77d8f30 ("clk: imx: scu: add two cells binding support") Acked-by: Stephen Boyd <sboyd@kernel.org> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20220419113435.246203-10-krzysztof.kozlowski@linaro.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1 parent 240bf4e commit fb4ac6f

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

drivers/clk/imx/clk-scu.c

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -683,7 +683,12 @@ struct clk_hw *imx_clk_scu_alloc_dev(const char *name,
683683
return ERR_PTR(ret);
684684
}
685685

686-
pdev->driver_override = "imx-scu-clk";
686+
ret = driver_set_override(&pdev->dev, &pdev->driver_override,
687+
"imx-scu-clk", strlen("imx-scu-clk"));
688+
if (ret) {
689+
platform_device_put(pdev);
690+
return ERR_PTR(ret);
691+
}
687692

688693
ret = imx_clk_scu_attach_pd(&pdev->dev, rsrc_id);
689694
if (ret)

0 commit comments

Comments
 (0)