[Yaffs] Why does YAFFS skip the first block?

Steve Wahl steve.wahl at qlogic.com
Mon Aug 15 20:36:53 BST 2005


On Wed, Jun 22, 2005 at 04:55:23PM +1200, Charles Manning wrote:
> 
> While the loss of a single block is not significant for NAND systems it is 
> significant for many NOR systems. YAFFS is a NAND system, but there have 
> already been some hacks done to make YAFFS NOR friendlier.
> 
> I consider my arm twisted and will do/test this in the next couple of days.
> 
> -- Charles

There is a problem with this that we ran into, and others may also, so
I thought I'd give a heads up:

There is an interaction problem if you ever shift between versions of
YAFFS that do and don't use block zero.  The version that doesn't use
block zero may not be able to correctly read some files written by the
version that does use block zero.

Specific instances of this would be upgrading to a new version of
software, then downgrading to an old version; or, what we ran into: A
bootloader that has yaffs code that skips block zero, that boots
kernel code that doesn't skip block zero.  Occasionally our kernel was
writing boot images to the flash that the bootloader couldn't read
(because a portion was in block zero)!

You won't detect this until you try to read a file that uses block zero
from older code...

--> Steve Wahl, Qlogic Corp.




More information about the yaffs mailing list