[PATCH 1/1] fs:ubifs:recovery:fixup UBIFS cannot recover master node issue

Bean Huo 霍斌斌 (beanhuo) beanhuo at micron.com
Wed Jan 27 18:42:33 PST 2016


> Bean,
> 
> Am 14.12.2015 um 04:55 schrieb Bean Huo 霍斌斌 (beanhuo):
> > Dear Richard
> >
> >> Bean,
> >>
> >> Am 11.12.2015 um 09:26 schrieb Bean Huo 霍斌斌 (beanhuo):
> >>> For MLC NAND, paired page issue is now a common known issue.
> >>> This patch is just for master node cannot be recovered while there
> >>> will two pages be damaged in one single master node block.
> >>> As for this patch, if there are more than one page data in master
> >>> node block being damaged, and as long as exist one uncorrupted
> >>> master node block, master node will be recovered.
> >>
> >> So, this patch is part if a larger patch series to make UBIFS MLC aware?
> >
> > No, this is not one part of my path series, just a single and
> > dedicated to Master node.
> 
> [...]
> 
> > Currently, we get more feedbacks from our customers who are using MLC
> > NAND, They more like UBIFS more reliable, Even can tolerate to discard
> > some user Data after next power on. Means that they don't want to
> > UBIFS mount failed just Because of power loss, If to discard the data
> > for the stability of the system, they prefer to choose the latter.
> 
> MLC is currently simply not supported. If your hardware does not have a
> mechanism do temper power-loss the paired page issue will damage UBI and
> UBIFS.
> Please correct me if I'm wrong but this patch just papers over one symptom
> of that.
> 
> > For UBIFS master node on MLC NAND, I often found that one of master
> > node block is OK, But because of second master node block exist two
> > pages damaged data, recovery always Fails. Not matter SLC or MLC, as
> > long as there is a good master node, recovery must be Successful.
> 
> This needs a much more detailed explanation.
> In which scenarios on SLC NAND can you get such an unmountable UBIFS?


It is my mistake involved SLC NAND.
Definitely, SLC NAND does not exist two pages being damaged within one block.
I mean that master should be recovered as long as one good master block exists.
I think, at least this method is more reasonable.
My question is that why UBI doesn't recover master node for this scenario?

> Maybe UBIFS is too strict and NAND behaves differently than UBIFS expects
> but we need to understand it in depth.
For this, I think, maybe MLC NAND had not been released yet when UBI initial design.
I would like to send my version 2 patch based on your suggestion.

> Thanks,
> //richard


More information about the linux-mtd mailing list