Messages in this thread | | | From | Javier González <> | Subject | Re: [PATCH] lightnvm: pblk: fix error path in pblk_lines_alloc_metadata | Date | Thu, 21 Sep 2017 11:56:46 +0200 |
| |
> On 20 Sep 2017, at 21.50, Rakesh Pandit <rakesh@tuxera.com> wrote: > > Use appropriate memory free calls based on allocation type used and > also fix number of times free is called if kmalloc fails. > > Signed-off-by: Rakesh Pandit <rakesh@tuxera.com> > --- > drivers/lightnvm/pblk-init.c | 8 ++++++-- > 1 file changed, 6 insertions(+), 2 deletions(-) > > diff --git a/drivers/lightnvm/pblk-init.c b/drivers/lightnvm/pblk-init.c > index 7cf4b53..470ef04 100644 > --- a/drivers/lightnvm/pblk-init.c > +++ b/drivers/lightnvm/pblk-init.c > @@ -624,12 +624,16 @@ static int pblk_lines_alloc_metadata(struct pblk *pblk) > > fail_free_emeta: > while (--i >= 0) { > - vfree(l_mg->eline_meta[i]->buf); > + if (l_mg->emeta_alloc_type == PBLK_VMALLOC_META) > + vfree(l_mg->eline_meta[i]->buf); > + else > + kfree(l_mg->eline_meta[i]->buf); > kfree(l_mg->eline_meta[i]); > } > > + i = PBLK_DATA_LINES; > fail_free_smeta: > - for (i = 0; i < PBLK_DATA_LINES; i++) > + while (--i >= 0) > kfree(l_mg->sline_meta[i]);
It is safe to use kfree on NULL pointers. No need to do this. You can either send a new patch, or we can change it when picking it up.
> > return -ENOMEM; > -- > 2.5.0
Rest looks good.
Reviewed-by: Javier González <javier@cnexlabs.com>
[unhandled content-type:application/pgp-signature] | |