Skip to contentSkip to conversation

JFFS2 Error or Maybe Flash Driver Error

DISCUSSION Zhonglin 3 participants 3 messages Sep 29, 2005 Memory technology devices (MTD)

lore
Share & tools
lore

Zhonglin

author
#0 lore raw

Hi All,

I pulled the JFFS2 code from CVS. And Ported 2.6.12-omap1 to p2-sample. When P2 sample run for a while, Sometimes The following message will show.

But when I boot again, it is ok again.

Does anybody meet the same problem ?

Node CRC 00800080 != calculated CRC 4bf2ff8d for node at 00676518 JFFS2 notice: (247) read_unknown: node header CRC failed at 0x9dfa60. But it must have been OK earl.Node totlen on flash (0x00800080) != totlen from node ref (0x0000059c)
JFFS2 notice: (247) read_unknown: node header CRC failed at 0x9deb3c. But it must have been OK earl.Node totlen on flash (0x00800080) != totlen from node ref (0x00000f24)
JFFS2 notice: (247) read_unknown: node header CRC failed at 0x9ddcbc. But it must have been OK earl.Node totlen on flash (0x00800080) != totlen from node ref (0x00000e80)
JFFS2 notice: (247) read_unknown: node header CRC failed at 0x9dce64. But it must have been OK earl.Node totlen on flash (0x00800080) != totlen from node ref (0x00000e58)
JFFS2 notice: (247) read_unknown: node header CRC failed at 0x9dbf3c. But it must have been OK earl.Node totlen on flash (0x00800080) != totlen from node ref (0x00000f28)
JFFS2 notice: (247) read_unknown: node header CRC failed at 0x9db5dc. But it must have been OK earl.Node totlen on flash (0x00800080) != totlen from node ref (0x00000960)
JFFS2 notice: (247) read_unknown: node header CRC failed at 0x9da914. But it must have been OK earl.Node totlen on flash (0x00800080) != totlen from node ref (0x00000cc8)
JFFS2 notice: (247) read_unknown: node header CRC failed at 0x9d9c94. But it must have been OK earl.Node totlen on flash (0x00800080) != totlen from node ref (0x00000c80)
JFFS2 notice: (247) read_unknown: node header CRC failed at 0x9d93c8. But it must have been OK earl.Node totlen on flash (0x00800080) != totlen from node ref (0x000008cc)
JFFS2 notice: (247) read_unknown: node header CRC failed at 0x9d883c. But it must have been OK earl.Node totlen on flash (0x00800080) != totlen from node ref (0x00000b8c)
JFFS2 notice: (247) read_unknown: node header CRC failed at 0x9d7f74. But it must have been OK earl.Node totlen on flash (0x00800080) != totlen from node ref (0x000008c8)

In our kernel source code, FILE drivers/mtd/chips/cfi_cmdset_0001.c , we change like below to fix a bug.

static void cfi_intelext_resume(struct mtd_info *mtd) {
struct map_info *map = mtd->priv;
struct cfi_private *cfi = map->fldrv_priv; int i;
struct flchip *chip;

   for (i=0; i<cfi->numchips; i++) {
       chip = &cfi->chips[i];

       spin_lock(chip->mutex);

       /* Go to known state. Chip may have been power cycled */
       if (chip->state == FL_PM_SUSPENDED) {
           //map_write(map, CMD(0xFF), cfi->chips[i].start);  //@@@@@@@@@@@@@@@ It will report error!!!
           map_write(map, CMD(0xFF), 0);
           chip->oldstate = chip->state = FL_READY;
           wake_up(&chip->wq);
       }

       spin_unlock(chip->mutex);

}
}

When our p2-sample enter the sleep mode, then resume , the resume code will be called.

So could anyone give me to fix the bug ??

Thanks a lot!

zhonglin

#1 lore raw
Quoted 7 lines · Zhonglin

Hi All,

I pulled the JFFS2 code from CVS. And Ported 2.6.12-omap1 to p2-sample. When P2 sample run for a while, Sometimes The following message will show.

But when I boot again, it is ok again.

Quoted 7 lines

Does anybody meet the same problem ?

Node CRC 00800080 != calculated CRC 4bf2ff8d for node at 00676518 JFFS2 notice: (247) read_unknown: node header CRC failed at 0x9dfa60. But it must have been OK earl.Node totlen on flash (0x00800080) != totlen from node ref (0x0000059c)

I have seen this problem, yes. Specifically, it has shown up when I try to mount a JFFS2 filesystem as the rootfs. When mounting it as a non-rootfs, I haven't seen the problem. I doubt that really makes a difference though, and it's probably related more to timing than anything.

Quoted 1 line

So could anyone give me to fix the bug ??

I haven't figure it out yet. My particular case never has the resume code called, so I'm not sure that's the problem.

josh

#2 lore raw
Quoted 5 lines · Josh Boyer

I have seen this problem, yes. Specifically, it has shown up when I try to mount a JFFS2 filesystem as the rootfs. When mounting it as a non-rootfs, I haven't seen the problem. I doubt that really makes a difference though, and it's probably related more to timing than anything.

Well, if you gather and send the full JFFS2 debugging log I may try to help.

Signature · 3 lines
Best Regards,
Artem B. Bityuckiy,
St.-Petersburg, Russia.