[PATCH] NAND: Free asprintf()-allocated space upon mtd device deletion.

Sascha Hauer s.hauer at pengutronix.de
Mon Dec 21 05:50:20 EST 2009


On Mon, Dec 21, 2009 at 04:43:50AM -0500, Robert P. J. Day wrote:
> 
> Given that add_mtd_device() invokes asprintf() thusly:
> 
>   mtd->cdev.name = asprintf("nand%d", mtd->class_dev.id);
>   ...
>   mtd->param_size.value = asprintf("%u", mtd->size);
>   ...
>   mtd->cdev_oob.name = asprintf("nand_oob%d", mtd->class_dev.id);
> 
> make sure del_mtd_device() frees that in the reverse order.
> 
> Signed-off-by: Robert P. J. Day <rpjday at crashcourse.ca>

Ok, applied

Sascha

> 
> ---
> 
> diff --git a/drivers/nand/nand.c b/drivers/nand/nand.c
> index 0a6128c..bcf52bd 100644
> --- a/drivers/nand/nand.c
> +++ b/drivers/nand/nand.c
> @@ -240,7 +240,9 @@ int add_mtd_device(struct mtd_info *mtd)
>  int del_mtd_device (struct mtd_info *mtd)
>  {
>  	unregister_device(&mtd->class_dev);
> +	free(mtd->cdev_oob.name);
>  	free(mtd->param_size.value);
> +	free(mtd->cdev.name);
>  	return 0;
>  }
> 
> 
> ========================================================================
> Robert P. J. Day                               Waterloo, Ontario, CANADA
> 
>             Linux Consulting, Training and Kernel Pedantry.
> 
> Web page:                                          http://crashcourse.ca
> Twitter:                                       http://twitter.com/rpjday
> ========================================================================
> 
> _______________________________________________
> barebox mailing list
> barebox at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/barebox
> 

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



More information about the barebox mailing list