[Yaffs] YAFFS Kernel Panic - No init found.

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Tom Knezevich
Date:  
To: yaffs@lists.aleph1.co.uk
Subject: [Yaffs] YAFFS Kernel Panic - No init found.

I see my problem has been experienced by others...? I'm in a little of a bind and need some guidance. I'm using a 2.6.22 Linux Kernel w/Yaffs2 enabled and have some issues on post NAND burning during Kernel Boot. On a particular NANDs with bad blocks, the Kernel trys to execute the Init stage and fails. The kernel panic trail is :

yaffs: dev is 32505858 name is "mtdblock2"
yaffs: passed flags ""
yaffs: Attempting MTD mount on 31.2, "mtdblock2"
[yaffs]: Version Set: 2
[yaffs]: MTD Write Size: 2048
[yaffs]: Version Set: 2
block 310 is bad
block 458 is bad
VFS: Mounted root (yaffs2 filesystem).
Freeing init memory: 92K
Kernel panic - not syncing: No init found. Try passing init= option to kernel.

The failure is due to the Kernel unable to execute the init files for the init/rootfs stage. I suspect there's some issue with the bad block locations mapping to these file locations on the NAND? I know the Kernel manages bad blocks using the BBT in the MTD Driver stack, so not sure why this would fail if the MTD Driver checks for bad blocks prior to reading from NAND? FYI - Our NAND Burner uses the "skip over bad blocks" method, and DOES NOT erase bad blocks so the Kernel can scan and build the BBT during MTD initialization.

Up until now, I've been using the same YAFFS2 Dump image fie when burning to our identical NANDs (SamSung 128MB/1Gb). Guess you can reuse the same YAFFS2 Dump Image whenever you burn to a different yet identical NAND (although I've had good success until the one that's now causing me problems). Am I supposed to create a new YAFFS2 Dump Image for every NAND that I burn??

Thanks in advance for any guidance.
Tom