[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Wear Leveling in JFFS2 NOT working!(?)



David Woodhouse wrote:
> 
> Tim@xxxxxxx.org said:
> > Providing n is random, this is a good solution. Can the list be hacked
> > to change the top/bottom without actually walking through n blocks and
> > moving them? I have not looked at the source, but for a linked list
> > you could join top and bottom entries and then break n and n-1 nodes
> > and start becomes n, end becomes n-1, etc.
> 
> Yep, hacking the list is fairly easy. Coming up with a pseudo-random number
> of reasonable quality at boot time when the entropy pool is empty is the
> more interesting bit. The 'jiffies mod' trick would give repeatable
> results.

RTC should not be relied on as some hardware has this broken (iPAQ at
present ;-) What about totaling the checksums for each block as we scan
them at mount time and then mod that by numblocks? This would also be
repeatable given the same original filesystem. Every filesystem write
changes it. Reads do not, but then they don't need wear leveling do
they? ;-)

> Just to restate the obvious - it doesn't have to be _random_, just evenly
> distributed.

agreed

-- 
Tim Riker - http://rikers.org/ - short SIGs! <g>
All I need to know I could have learned in Kindergarten
... if I'd just been paying attention.

To unsubscribe from this list: send the line "unsubscribe jffs-dev" in
the body of a message to majordomo@xxxxxxx.com