lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 25 Aug 2020 22:51:33 +0800 From: Chen-Yu Tsai <wens@...e.org> To: Dinghao Liu <dinghao.liu@....edu.cn> Cc: Kangjie Lu <kjlu@....edu>, linux-rtc@...r.kernel.org, Alessandro Zummo <a.zummo@...ertech.it>, Alexandre Belloni <alexandre.belloni@...tlin.com>, linux-kernel <linux-kernel@...r.kernel.org>, Maxime Ripard <mripard@...nel.org>, linux-arm-kernel <linux-arm-kernel@...ts.infradead.org> Subject: Re: [PATCH] rtc: sun6i: Fix memleak in sun6i_rtc_clk_init On Sun, Aug 23, 2020 at 3:59 PM Dinghao Liu <dinghao.liu@....edu.cn> wrote: > > When clk_hw_register_fixed_rate_with_accuracy() fails, > clk_data should be freed. It's the same for the subsequent > error paths. I suppose you should also unregister the already registered clocks in the latter two error paths? > Signed-off-by: Dinghao Liu <dinghao.liu@....edu.cn> > --- > drivers/rtc/rtc-sun6i.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/rtc/rtc-sun6i.c b/drivers/rtc/rtc-sun6i.c > index e2b8b150bcb4..a837c5a40508 100644 > --- a/drivers/rtc/rtc-sun6i.c > +++ b/drivers/rtc/rtc-sun6i.c > @@ -272,7 +272,7 @@ static void __init sun6i_rtc_clk_init(struct device_node *node, > 300000000); > if (IS_ERR(rtc->int_osc)) { > pr_crit("Couldn't register the internal oscillator\n"); > - return; > + goto err; > } > > parents[0] = clk_hw_get_name(rtc->int_osc); > @@ -290,7 +290,7 @@ static void __init sun6i_rtc_clk_init(struct device_node *node, > rtc->losc = clk_register(NULL, &rtc->hw); > if (IS_ERR(rtc->losc)) { > pr_crit("Couldn't register the LOSC clock\n"); > - return; > + goto err; > } > > of_property_read_string_index(node, "clock-output-names", 1, > @@ -301,7 +301,7 @@ static void __init sun6i_rtc_clk_init(struct device_node *node, > &rtc->lock); > if (IS_ERR(rtc->ext_losc)) { > pr_crit("Couldn't register the LOSC external gate\n"); > - return; > + goto err; > } > > clk_data->num = 2; > -- > 2.17.1 > > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@...ts.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Powered by blists - more mailing lists