Re: [PATCH] params: fix potential memory leak in add_sysfs_param()

From: Rusty Russell
Date: Wed Aug 20 2014 - 16:50:26 EST


Arjun Sreedharan <arjun024@xxxxxxxxx> writes:
> Do not leak memory when attrs is non NULL and
> krealloc() fails. Without temporary variable,
> reference to it is lost.
>
> Signed-off-by: Arjun Sreedharan <arjun024@xxxxxxxxx>

...

> }
> - /* Despite looking like the typical realloc() bug, this is safe.
> - * We *want* the old 'attrs' to be freed either way, and we'll store
> - * the new one in the success case. */
> - attrs = krealloc(attrs, sizeof(new->grp.attrs[0])*(num+2), GFP_KERNEL);
> - if (!attrs) {
> +
> + new_attrs = krealloc(attrs, sizeof(new->grp.attrs[0])*(num+2), GFP_KERNEL);
> + if (!new_attrs) {

I think that comment you deleted is pretty clear. Is it wrong?

Cheers,
Rusty.
--
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/