Huang Shijie c51803ddba mtd: mtdpart: break it as soon as we parse out the partitions
We may cause a memory leak when the @types has more then one parser.

Take the `default_mtd_part_types` for example. The default_mtd_part_types has
two parsers now: `cmdlinepart` and `ofpart`.

Assume the following case:
The kernel command line sets the partitions like:
	#gpmi-nand:20m(boot),20m(kernel),1g(rootfs),-(user)
But the devicetree file(such as arch/arm/boot/dts/imx28-evk.dts) also sets
the same partitions as the kernel command line does.

In the current code, the partitions parsed out by the `ofpart` will
overwrite the @pparts which has already set by the `cmdlinepart` parser,
and the the partitions parsed out by the `cmdlinepart` is missed.
A memory leak occurs.

So we should break the code as soon as we parse out the partitions,
In actually, this patch makes a priority order between the parsers.
If one parser has already parsed out the partitions successfully,
it's no need to use another parser anymore.

Signed-off-by: Huang Shijie <shijie8@gmail.com>
Cc: stable@vger.kernel.org
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
2012-09-29 15:06:13 +01:00
..
2012-01-09 18:25:19 +00:00
2012-01-09 18:25:19 +00:00
2012-05-13 23:03:36 -05:00
2012-01-09 18:26:21 +00:00
2012-06-01 20:06:59 +01:00
2012-05-07 20:29:50 +01:00
2011-09-11 15:02:13 +03:00
2012-08-22 12:55:43 +01:00
2012-07-14 16:38:34 +04:00
2011-09-11 15:02:14 +03:00
2012-03-27 00:24:14 +01:00
2012-01-09 18:26:21 +00:00
2012-09-29 15:00:46 +01:00