[PATCH v2] mtd: implement proper partition handling

Richard Weinberger richard at nod.at
Thu Jan 9 10:43:04 PST 2020


Miquel,

----- Ursprüngliche Mail -----
>> What problem does this solve?
>> ...beside of a nice diffstat which removes more than it adds. :-)
> 
> It is much easier to escalade to the top most "master" device when
> there are multiple levels of partitioning, which was not cleanly
> described IMHO. Also it is already used in the MLC-in-pseudo-SLC-mode
> series :)

Ok. In fact I "found" this patch my looking at the SLC emulation patches.

>> > +static inline struct mtd_info *mtd_get_master(struct mtd_info *mtd)
>> > +{
>> > +	while (mtd->parent)
>> > +		mtd = mtd->parent;
>> > +
>> > +	return mtd;
>> > +}
>> 
>> So, parent == master?
> 
> top most parent (the one without parent) == master !
> 
>> 
>> When I create a MTD ontop of UBI using gluebi, who will be parent/master?
> 
> I don't really understand the issue here?

Let's say I have mtd0 with an ubi and a volume "xxx". After enabling
gluebi a new mtd1 will arrive on the system.
The stacking is mtd0 -> ubi (volume xxx) -> mtd1.
Is now a relationship between mtd1 and mtd0?

I'd expect mtd1's parent being mtd0.

Thanks,
//richard



More information about the linux-mtd mailing list