Re: [PATCH 00/22 take 3] UBI: Unsorted Block Images

Jörn Engel
2007-03-25T23:00:25Z

On Sun, 25 March 2007 13:49:58 -0800, David Lang wrote:
> On Sun, 25 Mar 2007, Jörn Engel wrote:
>
> >Logical volume management can just as easily move its management
> >information into a table, instead of having it spread across all blocks.
> >Blocks can keep their original size. Since you have to scan flash
> >anyway, you can also scan for a table, compare a magical number and do
> >some extra check to protect yourself against a UBI image inside some
> >logical volume. No big deal.

[ This was not a request for UBI to be changed. The only purpose was to
illustrate that LogFS is not broken. The previous thread suggested
otherwise and I just couldn't leave it at that. ]

> if you are being paranoid about write cycles putting the write count in the
> block you are writing avoids doing an erase/write elsewhere
>
> although, since you can flip bits to 1 without requireing an erase you
[ vice versa. you can flip bits to 0 without erasing. ]
> could sacrafice some space and say that your table has a normal counter for
> the number of times the block has been erased, but a 'tally counter' where
> you turn one bit on each time you erase the block, and when you fill up the
> tally block you re-write the entire table, clearing all the tallys. if you
> have relativly large eraseblocks it seems like you could afford to
> sacrafice the space in your master table to avoid erases of it

Or you could have a table and any number of updates to it. Erase one
block, append a small update marker to the table. There are plenty of
options. All have in common that code would be more complicated.

Another advantage is that erase counts don't get reset if the race
against a power failure during erase is lost.

Whether the advantaves of power-of-two blocksizes and safe erasecounts
are worth it, I leave for others to decide.

Jörn

--
Fools ignore complexity. Pragmatists suffer it.
Some can avoid it. Geniuses remove it.
-- Perlis's Programming Proverb #58, SIGPLAN Notices, Sept. 1982