From: "" <simon@baydel.com>
To: linux-mtd@lists.infradead.org
Subject: Re: JFFS2 Corruption.
Date: Tue, 24 Feb 2004 09:48:14 -0000 [thread overview]
Message-ID: <403B1DDE.22464.B72D0@localhost> (raw)
In-Reply-To: <4039DF0F.25483.F9554@localhost>
> On 19 Feb 2004 at 16:48, simon@baydel.com wrote:
>
> > I am having problems using JFFS2 filesystems on a NAND device. I
> > have had these problems in the past an decided not to use this
> > method for storing my data. I would really like to do this and I was
> > wondering if anyone else had been able to run such a system reliably
> > ? The NAND device is a 128MB SMC and I have downloaded the mtd code
> > from CVS within the last week.
> >
> > I am using mtdpart to provide partitions but for the moment I am
> > only using mtd1 as a root file system. To build this I perform the
> > following steps.
> >
> >
> > 1. Boot system via network and mount nfs root
> > 2. eraseall /dev/mtd1
> > 3. mount -t jffs2 /dev/mtdblock1 /smc
> > 4. cd /smc
> > 5. tar xvzf /rootfilesystem.tgz
> > 6. unmount /smc
> >
> > I then reboot using the SMC as my root filesystem. As the system
> > gets rebooted and incurrs more writes I get the following kinds of
> > message
> >
> > Empty flash at 0x00469ffcb ends at 0x0046a000
> >
> > or
> >
> > jffs2_scan_dirent_node(): Node CRC failed on node at 0x0046a7f0 read
> > 0xffffffff calculated 0xdec8161b
> >
> > I have written in before about these messages and I understand that
> > the first is of no concern but the second relates to write data
> > which may not have been written to the SMC.
> >
> > The thing is I have had this happen on two completely different
> > harware designs. On an X86 board and the other a PPC.
> >
> > I have checked and the OS umounts root as it shuts down. Also I
> > cannot find fsck.jffs2 in the util directory. Does it exist ?
> >
> > In trying to debug this I noticed that the device was still
> > reporting busy when nand_command was entered. I have put a line of
> > code in to delay until the device is ready at the start of the
> > routine. It is my understanding that if the device is busy when you
> > try and select/deselect or send a command the outcome cannot be
> > predicted. If this is not the case I would like to understand why.
> > If it is how does any of the NAND code work ?
> >
> > Any help greatly appreciated
> >
> >
> > Cheers Simon.
> >
> >
> >
On 23 Feb 2004 at 11:07, simon@baydel.com wrote:
> As I have been trying to use this as a root filesystem I checked made
> checks into the dismounting of the filesystem. It seems that the halt
> script remounts root read only. However I found that this does not
> cause mtdblock to flush it's cache. I have written a small program to
> perform an ioctl BLKFLSBUF and I call it after the system mounts root
> read only. This seems to help but it is not the whole story.
>
> I have also trawled the archives. There are some articles which list
> similar problems. It is proposed that these are related to unaligned
> memory access. Can anyone explain why this matters and how to prevent
> it.
>
> My current architecture is PPC.
>
> Many Thanks
>
>
> Simon.
>
>
Comitted the sin of posting a reply with the reply text first, sorry.
I have only managed to get this to fail if the jffs2 filesystem is mounted as root. I do
not seem to be able to get it to close and unmount the filesystem at shutdown. I
guess the BLKFLSBUF I do only flushes the buffer that is created when I open the
device and not the one that was created when the kernel opened the device.
My current thoughts are to create a ro root and and additional rw. Is there a better
way that I can do this ?
Cheers
Simon. __________________________
Simon Haynes - Baydel
Phone : 44 (0) 1372 378811
Email : simon@baydel.com
__________________________
next prev parent reply other threads:[~2004-02-24 10:29 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-02-19 16:48 JFFS2 Corruption simon
2004-02-23 11:07 ` simon
2004-02-24 9:48 ` simon [this message]
2004-02-24 12:00 ` David Woodhouse
2004-02-24 12:54 ` Simon Haynes
2004-02-24 13:04 ` Simon Haynes
2004-02-24 13:40 ` Simon Haynes
2004-02-24 14:22 ` David Woodhouse
2004-02-24 14:25 ` Simon Haynes
2004-02-24 14:56 ` David Woodhouse
2004-02-24 14:58 ` Simon Haynes
2004-02-24 15:35 ` David Woodhouse
2004-02-24 15:47 ` Simon Haynes
2004-02-24 16:14 ` David Woodhouse
2004-02-24 16:17 ` Simon Haynes
2004-02-24 16:51 ` David Woodhouse
2004-02-24 17:05 ` Simon Haynes
2004-02-24 18:05 ` David Woodhouse
2004-02-24 18:04 ` Simon Haynes
2004-02-25 9:49 ` simon
2004-02-25 10:25 ` David Woodhouse
2004-02-26 11:08 ` Simon Haynes
2004-02-26 11:55 ` David Woodhouse
2004-03-03 15:31 ` David Woodhouse
2004-03-08 15:10 ` Simon Haynes
2004-03-09 15:33 ` Simon Haynes
2004-03-16 16:14 ` David Woodhouse
2004-03-19 10:37 ` Simon Haynes
2004-03-19 11:11 ` David Woodhouse
2004-02-24 17:12 ` Simon Haynes
2004-02-24 16:55 ` David Woodhouse
-- strict thread matches above, loose matches on Subject: below --
2004-02-05 13:15 JFFS2 corruption Florian Schirmer
2004-02-08 10:37 ` David Woodhouse
2004-02-08 11:38 ` Florian Schirmer
2004-02-08 11:53 ` David Woodhouse
2004-02-08 17:02 ` Florian Schirmer
2004-02-08 17:13 ` David Woodhouse
2004-02-08 11:28 ` David Woodhouse
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=403B1DDE.22464.B72D0@localhost \
--to=simon@baydel.com \
--cc=linux-mtd@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox