RFC: detect and manage power cut on MLC NAND

Iwo Mergler Iwo.Mergler at netcommwireless.com
Thu Mar 19 22:40:31 PDT 2015


On Fri, 20 Mar 2015 14:38:03 +1100
nick <xerofoify at gmail.com> wrote:
> 
> 
> On 2015-03-19 08:25 PM, Iwo Mergler wrote:
> > 
> > Get UBI to map the paired pages into a single write unit. Jumbo page
> > if you will.  So, instead of a block with 64 pages, we get 32 pages,
> > twice as large.
> > 
> > Thus, the paired pages will be written in quick succession. A power
> > cut during this is reduced to the unstable bits issue we already
> > have with SLC.
> > 
> > UBI could take the risk and split the first page pair between EC and
> > VID headers, replacing the EC info with average in case of unlikely
> > failure.
> > 
> > Would this work?
> > 
> > 
> > Best regards,
> > 
> > Iwo
> > 
> > 
> > 
> Iwo,
> Not a bad idea but what happens if the power gets cut after the first
> 2 pages then we lose 30 pages worth of data.  Unless the hardware is
> very fast and can move the pages over in a millisecond or less then
> this can't really worth. However if we make these transactions atomic
> in nature this may work better as CPU instruction respond is in the
> nanosecond range even on low cost embedded boards using UBI for raw
> flash embedded on to themselves. Nick

I'm not sure I understand - why would you lose any data outside the
affected paired pages?

Also, write order within the block will still be respected. That is,
when writing the first page pair, the other pages will be erased.


Best regards,

Iwo



More information about the linux-mtd mailing list