Corrupt empty space

Ricard Wanderlof ricard.wanderlof at axis.com
Fri Mar 21 03:43:15 EDT 2014


On Fri, 21 Mar 2014, Artem Bityutskiy wrote:

> On Fri, 2014-03-21 at 07:18 +0000, Gupta, Pekon wrote:
>> It's still getting discussed in [a] and [b]. But there are multiple issues to it.
>>
>>  (1) Many hardware controllers cannot parse ECC errors in blank-pages.
>>    So, checking number of 0-bits in a page is done in software by comparing
>>    each byte with 0xff.
>
> OK.
>
>> (2) Counting number of 0-bits in a page in software, brings down your read-performance.
>
> UBIFS _only_ needs this when doing recovery, which is _only_ done after
> unclean reboots, and this kind of reads would be done _only_ for a
> couple of max I/O units and _only_ if there is a corrupted node in the
> journal.
>
> IOW, this would be done rarely, and for just few pages on mount.

What about when attaching a UBI volume to a completely a erased partition? 
I would assume that with the EC and VID headers thus missing, that UBI 
would erase each block prior to writing the headers, and then knowing that 
they were erased not need to check for 0xff in the blocks?

Admittedly this would only happen once in a products lifetime so even if 
UBI did need to scan each block, it won't have much of an impact on 
performance, except possibly that the additional time would be spent in 
production where time is a premium.

/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