summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorXiu Jianfeng <xiujianfeng@huawei.com>2022-11-22 21:36:14 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2023-01-18 09:26:33 +0100
commitf0295209de457049a4a5f3e3985528391bd1ab34 (patch)
treee0793478a55cb1cf59f1a6b35c65e07b7ee17d29 /drivers
parent8c6151b8e8dd2d98ad2cd725d26d1e103d989891 (diff)
downloadlinux-f0295209de457049a4a5f3e3985528391bd1ab34.tar.gz
linux-f0295209de457049a4a5f3e3985528391bd1ab34.tar.bz2
linux-f0295209de457049a4a5f3e3985528391bd1ab34.zip
clk: st: Fix memory leak in st_of_quadfs_setup()
[ Upstream commit cfd3ffb36f0d566846163118651d868e607300ba ] If st_clk_register_quadfs_pll() fails, @lock should be freed before goto @err_exit, otherwise will cause meory leak issue, fix it. Signed-off-by: Xiu Jianfeng <xiujianfeng@huawei.com> Link: https://lore.kernel.org/r/20221122133614.184910-1-xiujianfeng@huawei.com Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com> Signed-off-by: Stephen Boyd <sboyd@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/clk/st/clkgen-fsyn.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/clk/st/clkgen-fsyn.c b/drivers/clk/st/clkgen-fsyn.c
index 14819d919df1..715c5d3a5cde 100644
--- a/drivers/clk/st/clkgen-fsyn.c
+++ b/drivers/clk/st/clkgen-fsyn.c
@@ -948,9 +948,10 @@ static void __init st_of_quadfs_setup(struct device_node *np,
clk = st_clk_register_quadfs_pll(pll_name, clk_parent_name, data,
reg, lock);
- if (IS_ERR(clk))
+ if (IS_ERR(clk)) {
+ kfree(lock);
goto err_exit;
- else
+ } else
pr_debug("%s: parent %s rate %u\n",
__clk_get_name(clk),
__clk_get_name(clk_get_parent(clk)),