[PATCH 6/7] clk: st: clkgen-pll: Remove redundant kfree() in clkgen_c32_pll_setup()

Haoxiang Li posted 7 patches 3 weeks, 3 days ago
There is a newer version of this series
[PATCH 6/7] clk: st: clkgen-pll: Remove redundant kfree() in clkgen_c32_pll_setup()
Posted by Haoxiang Li 3 weeks, 3 days ago
In clkgen_c32_pll_setup(), pll_name is actually pll_clk -> core->name.
This variable will be released in clk_unregister() -> __clk_release()
if some error occurs. Thus kfree(pll_name) will cause a double free.
Remove this redundant kfree().

Signed-off-by: Haoxiang Li <lihaoxiang@isrc.iscas.ac.cn>
---
 drivers/clk/st/clkgen-pll.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/clk/st/clkgen-pll.c b/drivers/clk/st/clkgen-pll.c
index f748e1fce735..89f0454fa72e 100644
--- a/drivers/clk/st/clkgen-pll.c
+++ b/drivers/clk/st/clkgen-pll.c
@@ -826,7 +826,6 @@ static void __init clkgen_c32_pll_setup(struct device_node *np,
 	return;
 
 err:
-	kfree(pll_name);
 	kfree(clk_data->clks);
 	kfree(clk_data);
 err_pll_unregister:
-- 
2.25.1
Re: [PATCH 6/7] clk: st: clkgen-pll: Remove redundant kfree() in clkgen_c32_pll_setup()
Posted by Brian Masney 3 weeks, 3 days ago
On Fri, Jan 16, 2026 at 07:38:46PM +0800, Haoxiang Li wrote:
> In clkgen_c32_pll_setup(), pll_name is actually pll_clk -> core->name.
> This variable will be released in clk_unregister() -> __clk_release()
> if some error occurs. Thus kfree(pll_name) will cause a double free.
> Remove this redundant kfree().
> 
> Signed-off-by: Haoxiang Li <lihaoxiang@isrc.iscas.ac.cn>

A fixes tag is definitely appropriate here.

Fixes: b9b8e614b580 ("clk: st: Support for PLLs inside ClockGenA(s)")
Reviewed-by: Brian Masney <bmasney@redhat.com>