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