[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <870ebf31-340a-1673-d4b3-e755dd2be493@lightnvm.io>
Date: Fri, 23 Feb 2018 07:12:26 +0100
From: Matias Bjørling <mb@...htnvm.io>
To: Huaicheng Li <huaicheng@...uchicago.edu>,
Javier González <jg@...htnvm.io>
Cc: linux-block@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] lightnvm: fix memory leak in pblk_luns_init
On 02/23/2018 12:03 AM, Huaicheng Li wrote:
> Please ignore my previous email as I found the memory is free'ed at
> pblk_init()'s error handling logic.
> Sorry for the interruption.
>
> On Thu, Feb 22, 2018 at 3:01 PM, Huaicheng Li <huaicheng@...uchicago.edu>
> wrote:
>
>> Signed-off-by: Huaicheng Li <huaicheng@...uchicago.edu>
>> ---
>> drivers/lightnvm/pblk-init.c | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/lightnvm/pblk-init.c b/drivers/lightnvm/pblk-init.c
>> index 93d671ca518e..330665d91d8d 100644
>> --- a/drivers/lightnvm/pblk-init.c
>> +++ b/drivers/lightnvm/pblk-init.c
>> @@ -510,6 +510,7 @@ static int pblk_luns_init(struct pblk *pblk, struct
>> ppa_addr *luns)
>> if (ret) {
>> while (--i >= 0)
>> kfree(pblk->luns[i].bb_list);
>> + kfree(pblk->luns);
>> return ret;
>> }
>> }
>> --
>> 2.13.6
>>
>>
>
No worries. The initialization part is pretty complex due to all the
data structures being set up. I would love to have a clean
initialization function, which cleans up after it self. But being able
to share the "fail" bringup and tear-down code is very helpful and makes
other parts easier.
Powered by blists - more mailing lists