On Saturday 29 May 2010 03:31:11 Dhivya Ayyappan - ERS, HCL Tech wrote: > Hi All, >   > I have ported the yaffs2 file system to Threadx OS. The nand flash used is > of  size 256 mb. I am able to mount, create the files, directories, file > read, write,dump etc and unmount it. After unmount, again able to mount it > and it restores from checkpoint succesfully.In the second time if i try to > create the files of size greater than the block size (i.e) exceeding the > current block and moving to next block(seems like checkpointed block).In > that case it is skipping the checkpointed block and continue its writing in > the next block with messages in the console "Block was not erased, yaffs > write require 2 attempts" and  file created in flash.and after that unmount > is done at last... > Third time,during mounting, some error messages are seen in the console and > entire file system gets corrupted. > Checkpoint block count wrong dev 1 count 0 > Erased block count wrong dev 975 count 976 > Freechunks verification failure 63823 63887 -64 > yaffs: restored from checkpoint > Freechunks verification failure 63823 63887 -64 >   > Could anyone please help me out in solving this issue. Any suggestions are > welcome. > Thanks, Hello Dhivya There is likely something odd going on in your flash interfacing. There are a few interacting mechanisms so it is better to try to work on one issue at a time. I suggest that you do the following: * Disable checkpointing and caching by setting skipCheckpointRead = 1; skipCheckpointWrite = 1; nShortOpCaches = 0; * Enable all verification etc by setting yaffs_treaceMask = 0xffffffff; Once you have that working then turn the checkpointing and caching back on and see if that works. -- Charles