[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <d811ef14-ec53-3422-b747-7df0c1ce360d@linaro.org>
Date: Tue, 6 Nov 2018 10:06:03 +0100
From: Daniel Lezcano <daniel.lezcano@...aro.org>
To: Anson Huang <anson.huang@....com>,
"tglx@...utronix.de" <tglx@...utronix.de>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Cc: dl-linux-imx <linux-imx@....com>
Subject: Re: [PATCH V2 2/2] clocksource: imx-gpt: add necessary kfree to avoid
resource leak
Hi Anson,
On 06/11/2018 02:38, Anson Huang wrote:
> Hi, Daniel
>
> Best Regards!
> Anson Huang
>
>> -----Original Message-----
>> From: Daniel Lezcano [mailto:daniel.lezcano@...aro.org]
>> Sent: 2018年11月5日 21:35
>> To: Anson Huang <anson.huang@....com>; tglx@...utronix.de;
>> linux-kernel@...r.kernel.org
>> Cc: dl-linux-imx <linux-imx@....com>
>> Subject: Re: [PATCH V2 2/2] clocksource: imx-gpt: add necessary kfree to avoid
>> resource leak
>>
>> Hi Anson,
>>
>> On 05/11/2018 02:10, Anson Huang wrote:
>>> kfree should be called to free resource in error path before return.
>>>
>>> Signed-off-by: Anson Huang <Anson.Huang@....com>
>>> ---
>>> drivers/clocksource/timer-imx-gpt.c | 8 ++++++--
>>> 1 file changed, 6 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/drivers/clocksource/timer-imx-gpt.c
>>> b/drivers/clocksource/timer-imx-gpt.c
>>> index a3d6ccb..0f78b30 100644
>>> --- a/drivers/clocksource/timer-imx-gpt.c
>>> +++ b/drivers/clocksource/timer-imx-gpt.c
>>> @@ -477,12 +477,16 @@ static int __init mxc_timer_init_dt(struct
>> device_node *np, enum imx_gpt_type t
>>> return -ENOMEM;
>>>
>>> imxtm->base = of_iomap(np, 0);
>>> - if (!imxtm->base)
>>> + if (!imxtm->base) {
>>> + kfree(imxtm);
>>> return -ENXIO;
>>> + }
>>>
>>> imxtm->irq = irq_of_parse_and_map(np, 0);
>>> - if (imxtm->irq <= 0)
>>> + if (imxtm->irq <= 0) {
>>> + kfree(imxtm);
>>> return -EINVAL;
>>> + }
>>>
>>> imxtm->clk_ipg = of_clk_get_by_name(np, "ipg");
>>
>> Please convert to timer-of API.
>
> This patch mainly to fix the potential resource leak issue, for converting
> to timer-of API, should I add another patch for it? Since it is a different
> subject.
Actually I was unclear. The patch is duplicating the kfree in the error
path, usually a rollback routine should be provided.
So instead of creating this rollback path, you can directly use the
timer-of which contains the error check and rollback.
--
<http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs
Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog
Powered by blists - more mailing lists