Message ID | 20231027025057.11510-1-hbh25y@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v2] ti: fix possible memory leak in _ti_omap4_clkctrl_setup() | expand |
On 27.10.2023 05:50, Hangyu Hua wrote: > kstrndup() and kstrdup_and_replace() in clkctrl_get_name() can perform > dynamic memory allocation. So clkctrl_name() needs to be freed when s/clkctrl_name()/clkctrl_name > provider->clkdm_name is NULL. > > Fixes: bd46cd0b802d ("clk: ti: clkctrl: check return value of kasprintf()") > Signed-off-by: Hangyu Hua <hbh25y@gmail.com> > --- > > v2: fix commit info. > > drivers/clk/ti/clkctrl.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/clk/ti/clkctrl.c b/drivers/clk/ti/clkctrl.c > index 607e34d8e289..cb4aa8a45bb2 100644 > --- a/drivers/clk/ti/clkctrl.c > +++ b/drivers/clk/ti/clkctrl.c > @@ -591,6 +591,7 @@ static void __init _ti_omap4_clkctrl_setup(struct device_node *node) > provider->clkdm_name = kasprintf(GFP_KERNEL, > "%s_clkdm", clkctrl_name); > if (!provider->clkdm_name) { > + kfree(clkctrl_name); > kfree(provider); > return; > }
diff --git a/drivers/clk/ti/clkctrl.c b/drivers/clk/ti/clkctrl.c index 607e34d8e289..cb4aa8a45bb2 100644 --- a/drivers/clk/ti/clkctrl.c +++ b/drivers/clk/ti/clkctrl.c @@ -591,6 +591,7 @@ static void __init _ti_omap4_clkctrl_setup(struct device_node *node) provider->clkdm_name = kasprintf(GFP_KERNEL, "%s_clkdm", clkctrl_name); if (!provider->clkdm_name) { + kfree(clkctrl_name); kfree(provider); return; }
kstrndup() and kstrdup_and_replace() in clkctrl_get_name() can perform dynamic memory allocation. So clkctrl_name() needs to be freed when provider->clkdm_name is NULL. Fixes: bd46cd0b802d ("clk: ti: clkctrl: check return value of kasprintf()") Signed-off-by: Hangyu Hua <hbh25y@gmail.com> --- v2: fix commit info. drivers/clk/ti/clkctrl.c | 1 + 1 file changed, 1 insertion(+)