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

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



David Woodhouse wrote:
> Either:
>         1. After scan, move the first <n> blocks in the list to the end
>                 of the list, where 1 < n < sizeof(list).

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.

>         2. When adding entries to the lists during scan, do something
>                 like: if (jiffies % 1) list_add_tail() else list_add().

This will still be somewhat pattern oriented. last blocks scanned will
be either at front or back so I suspect wear numbers will increase
towards the end of scanned blocks. ie: first scanned blocks would never
be on the end of the dirty list.
-- 
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