UBIFS recovery fails

Ricard Wanderlof ricard.wanderlof at axis.com
Mon Oct 24 03:00:10 EDT 2011


On Thu, 20 Oct 2011, Artem Bityutskiy wrote:

>> The real problem appears when those faulty bits are unstable: during 
>> the first few read attempts, the page may be successfully read 
>> (possibly with ecc corrections); and then, a bit later, the page 
>> becomes unreadable because of too many faulty bits.
>
> Right. If you first get a correctable bit-flip, UBI will schedule this
> PEB for scrubbing. When the background thread starts scrubbing, it will
> read the PEB _again_, and this time it can end up with an uncorrectable
> ECC error.
>
> This is probably also a good point: when UBIFS recovers, it should
> probably somehow ask UBI to _not_ do scrubbing, to avoid failures at UBI
> level if UBI decides to scrub a PEB before UBIFS erase-cycles it.
>
> IOW, the whole stack (not only UBIFS) should make sure the PEBs with
> unstable bits are read only once.

How would UBI+ubifs compare to jffs2 in this respect? I would naïvely 
assume that since jffs2 doesn't do any scrubbing, it would just return ok 
if the data happened to be read correctly that time, and something like an 
I/O error if the data was faulty, but without taking any special action in 
that case?

/Ricard
-- 
Ricard Wolf Wanderlöf                           ricardw(at)axis.com
Axis Communications AB, Lund, Sweden            www.axis.com
Phone +46 46 272 2016                           Fax +46 46 13 61 30



More information about the linux-mtd mailing list