[Yaffs] Some thing about Wear-leveling of YAFFS

Top Page
Attachments:
Message as email
+ (text/plain)
+ (text/html)
Delete this message
Reply to this message
Author: fs p
Date:  
To: yaffs
CC: yaffs
Subject: [Yaffs] Some thing about Wear-leveling of YAFFS
In the maillist,I found that :

> I have downloaded YAFFS from Aleph One. And I am tracing it's code now.
>
> I found that the document you write below:
> Wear leveling
>
> No wear leveling is explicitly used here. Instead we rely on two
> "strategies":
>
> ・         Reserving some blocks to cater for failure. You need to do this
> anyway with NAND. The main purpose behind wear leveling is to prevent some
> blocks getting more wear and failing. Since we expect, and handle, failure


> this is no longer as important.
>
> ・         The infrequent random block selection should prevent low-wear
> blocks getting "stuck".

>
> But I did not find the 「random block selection」 code section in YAFFS.


>>This has never been implemented. It is probably not required, but it would

be
>>possible to add this quite simply.


>>-- CHarles


I trace the code and find the function yaffs_FindBlockForAllocation, what
it do is find a empty state block from start to end .
In this manner ,how can you "random select block "?


Regards.
eq613