[Yaffs] Re: Writing a single file marks entire device as bad

Martin Egholm Nielsen martin at egholm-nielsen.dk
Thu Jul 21 09:17:58 BST 2005


Hi,

>>> I've been trying to patch my 2.4.20 kernel with the YAFFS source from 
>>> CVS.
>>> I've got it up and spinning - sort of! :-)
> === 8< 8< 8< ===
>>> If I try to write any data to the device - e.g. "echo bah > someFile", I
>>> get the following million messages:
>>>
>>> === 8< 8< 8< ===
>>> **>> yaffs chunk 65373 was not erased
>>> **>> yaffs chunk 65374 was not erased
>>> **>> yaffs chunk 65375 was not erased
>>> **>> Block 2042 retired
>>> **>> yaffs write required 64862 attempts
>>> and the entire device is marked bad.
>>
>> This is almost 100% guaranteed an ECC clash between mtd ecc checking 
>> and YAFFS ecc checking.
> 
> Super! :-)

>>> My mtd-kernel-source is from CVS-2005-03-04...
>>> I'm suspecting the ecc/oob management, but have no clue to how to
>>> disable it?!
>>> The yaffs-rootfs-howto states that this is "fixed" in the latest mtd
>>> cvs, but the document has no date, so it's difficult to say what
>>> "latest" means ;-)

>> The most important thing to do here is to turn off ECC in either YAFFS 
>> or mtd.
>> I would suggest searching the list archives for responses by Nick Bane 
>> on this matter,

> I just kinda gave up when I discovered that the archive didn't have a 
> search function:
> http://www.aleph1.co.uk/pipermail/yaffs/
> But turning to google, I found the two config parameters:
> 
> CONFIG_YAFFS_USE_NANDECC
> CONFIG_MTD_NAND_VERIFY_WRITE
> 
> I guess these should do it!
> 
> I'll try that in the morrow...

I just tried disabling YAFFS' ECC (CONFIG_YAFFS_USE_NANDECC=n), but that 
didn't do anything good for me :-)
I did a "eraseall" of the device, but the moment I try to write, it's 
all marked bad...

Any new hints?

I guess one could be to upgrade to the latest MTD (in contrast to my 
current march version)...

BR,
  Martin




More information about the yaffs mailing list