Re: [PATCH] coredump: prevent double-free on an error path in coredumper

From: Oleg Nesterov
Date: Wed Sep 12 2012 - 14:58:25 EST


On 09/12, Oleg Nesterov wrote:
>
> On 09/12, Venu Byravarasu wrote:
> >
> > > --- a/fs/binfmt_elf.c
> > > +++ b/fs/binfmt_elf.c
> > > @@ -1695,30 +1695,19 @@ static int elf_note_info_init(struct elf_note_info
> > > *info)
> > > return 0;
> > > info->psinfo = kmalloc(sizeof(*info->psinfo), GFP_KERNEL);
> >
> > Why don't you change kmalloc to devm_kzalloc, so that free can be ignored altogether.
>
> kzalloc(), I guess...
>
> Still I can't understand what did you mean.

Denys explained me privately what did you mean.

Well. elf_core_dump() does a lot of kmalloc's. We should either
change them all or nothing. And even if we do this, I think this
particular patch makes sense anyway.

Not sure we want "struct device" for this, perhaps this devres
code should be generalized somehow.

Oleg.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/