On Thu, 30 Jul 2015 12:18:03 +0200 Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx> wrote: > If we fail to allocate a partition structure in the middle of the partition > creation process, the already allocated partitions are never removed, which > means they are still present in the partition list and their resources are > never freed. Ping. > > Signed-off-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx> > Cc: stable@xxxxxxxxxxxxxxx > --- > drivers/mtd/mtdpart.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/mtd/mtdpart.c b/drivers/mtd/mtdpart.c > index cafdb88..919a936 100644 > --- a/drivers/mtd/mtdpart.c > +++ b/drivers/mtd/mtdpart.c > @@ -664,8 +664,10 @@ int add_mtd_partitions(struct mtd_info *master, > > for (i = 0; i < nbparts; i++) { > slave = allocate_partition(master, parts + i, i, cur_offset); > - if (IS_ERR(slave)) > + if (IS_ERR(slave)) { > + del_mtd_partitions(master); > return PTR_ERR(slave); > + } > > mutex_lock(&mtd_partitions_mutex); > list_add(&slave->list, &mtd_partitions); -- Boris Brezillon, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html