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@xxxxxxxxxxxxxx> 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@xxxxxxxxxxxxxxxxxxx > 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 | _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox