A question about UBIFS

Zhao Forrest forrest.zhao at gmail.com
Mon Jun 16 03:16:58 EDT 2008


On Mon, Jun 16, 2008 at 2:42 PM, Artem Bityutskiy
<Artem.Bityutskiy at nokia.com> wrote:
> Hi,
>
> Zhao Forrest wrote:
>>
>> Hi Artem,
>> I have a basic question about NAND flash page update in UBIFS/UBI,
>> take the following as an example:
>> 1 a NAND flash with page size of 4KB, erase block size of 256KB, so
>> there're 64 pages within an erase block
>> 2 page 0 - page 10 has invalid data content, page 11 - page 63 has
>> valid data content from FS's point of view
>> 3 UBIFS attempts to update(or rewrite) page 11
>> My question is how page 11 is updated by UBIFS/UBI?
>> I only read the design docs of UBI and guess that for this particular
>> case a new physical eraseblock is got by UBI, then new content of page
>> 11 is written to page 11 of new physical eraseblock, page 12 - page 63
>> in original physical eraseblock are copied to new physical eraseblock,
>> lastly the mapping between logical eraseblock and physical eraseblock
>> is updated. Am I right?
>
> Right. All updates are out-of-place.
>
So when only page 11 is rewritten, are pages 12-63 rewritten at the same time?
Or page 11 is updated by wandering tree mechanism, and pages 12-63 are
untouched?

Thanks,
Forrest



More information about the linux-mtd mailing list