* JFFS2 filesystem integrity issue
@ 2008-03-19 3:45 Duke
2008-03-19 4:02 ` Jamie Lokier
0 siblings, 1 reply; 4+ messages in thread
From: Duke @ 2008-03-19 3:45 UTC (permalink / raw)
To: linux-mtd
Hi All,
I have a system that uses a touchscreen I use tslib to handle events.
The tslib calibration sits on a mtd block that is a JFFS2 file system.
For quite a while the systems would be operational and would be so for
months. However, at times it would appear to lose the calibration and
I was baffled by this since the file could not be changed. Rerunning
the calibration solved the calibration issue but I struggled to
determine what the problem is. After a while it seems not to do with
anything file related but the filesystem it sits on. For some reason
it either seem to read the file incorrectly or the file is corrupt
some how. When this happens I don't loose the calibration altogether
but it is intermittent and sporadic at times.
Has anyone seen something similar? Does the cause seem realistic? Has
anyone had a possible corruption like this?
Any thoughts would be much appreciated.
Thank you.
D.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: JFFS2 filesystem integrity issue
2008-03-19 3:45 JFFS2 filesystem integrity issue Duke
@ 2008-03-19 4:02 ` Jamie Lokier
2008-03-19 13:35 ` Duke
0 siblings, 1 reply; 4+ messages in thread
From: Jamie Lokier @ 2008-03-19 4:02 UTC (permalink / raw)
To: Duke; +Cc: linux-mtd
Duke wrote:
> For some reason it either seem to read the file incorrectly or the
> file is corrupt some how. When this happens I don't loose the
> calibration altogether but it is intermittent and sporadic at times.
> Has anyone seen something similar? Does the cause seem realistic?
> Has anyone had a possible corruption like this?
I have seen similar, and it was due to borderline timing or signal
integrity issues, possibly affected by what else the CPU was doing at
the time.
It was fixed in our case by improving the PCB design.
-- Jamie
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: JFFS2 filesystem integrity issue
2008-03-19 4:02 ` Jamie Lokier
@ 2008-03-19 13:35 ` Duke
2008-03-19 15:15 ` Jamie Lokier
0 siblings, 1 reply; 4+ messages in thread
From: Duke @ 2008-03-19 13:35 UTC (permalink / raw)
To: Jamie Lokier; +Cc: linux-mtd
On Tue, Mar 18, 2008 at 11:02 PM, Jamie Lokier <jamie@shareable.org> wrote:
> Duke wrote:
> > For some reason it either seem to read the file incorrectly or the
> > file is corrupt some how. When this happens I don't loose the
> > calibration altogether but it is intermittent and sporadic at times.
> > Has anyone seen something similar? Does the cause seem realistic?
> > Has anyone had a possible corruption like this?
>
> I have seen similar, and it was due to borderline timing or signal
> integrity issues, possibly affected by what else the CPU was doing at
> the time.
Didn't adjusting the timing of the banks help you any?
> It was fixed in our case by improving the PCB design.
I'm doing a rev of the board but as far as improving the design, I
have no reason to adjust my memory design.
Perhaps you have something I can look for?
Thanks,
-D
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: JFFS2 filesystem integrity issue
2008-03-19 13:35 ` Duke
@ 2008-03-19 15:15 ` Jamie Lokier
0 siblings, 0 replies; 4+ messages in thread
From: Jamie Lokier @ 2008-03-19 15:15 UTC (permalink / raw)
To: Duke; +Cc: linux-mtd
Duke wrote:
> > > For some reason it either seem to read the file incorrectly or the
> > > file is corrupt some how. When this happens I don't loose the
> > > calibration altogether but it is intermittent and sporadic at times.
> > > Has anyone seen something similar? Does the cause seem realistic?
> > > Has anyone had a possible corruption like this?
> >
> > I have seen similar, and it was due to borderline timing or signal
> > integrity issues, possibly affected by what else the CPU was doing at
> > the time.
>
> Didn't adjusting the timing of the banks help you any?
I'm not sure what you mean by this. The only adjustment that can be
made in software on our device, as far as I know, is to reduce the
clock frequency.
> > It was fixed in our case by improving the PCB design.
>
> I'm doing a rev of the board but as far as improving the design, I
> have no reason to adjust my memory design.
> Perhaps you have something I can look for?
I don't know what fixed our design. A new hardware rev arrived, and
the problem no longer occurred. But my instincts suggest two
possibilities:
- Supply voltage too low, or insufficient stabilisation near the chips.
- Excessive propagation delay between the CPU and flash, failing
to meet timing specs.
Both of these I've observed on our boards, and both of them cause
spurious bit errors when reading flash (or RAM for that matter). I
noticed that these bit errors, in both cases, are dependent on what
other activity the board is doing at a similar time - e.g. reading
from disk, booting, CPU busy or idle, even specific code sequences, etc.
Spurious bit errors results in JFFS2 temporary file corruption on
reads, similar to what you have. Unfortunately, JFFS2 doesn't report
this as an error. Because of the way it works, it can only silently
change the file contents.
If you can reproduce these occasional errors by soak testing, try
lowering the clock frequency. If the errors go away, you know it's
probably a marginal hardware problem.
-- Jamie
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2008-03-19 15:15 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-03-19 3:45 JFFS2 filesystem integrity issue Duke
2008-03-19 4:02 ` Jamie Lokier
2008-03-19 13:35 ` Duke
2008-03-19 15:15 ` Jamie Lokier
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).