RE: Question on the fs choice

From: VanBaren, Gerald (AGRE) <hidden>
Date: 2004-05-13 12:54:55

From: Zajac Adam-AAZ004 [mailto:Adam.Zajac@motorola.com]
Sent: Wednesday, May 12, 2004 9:00 PM
To: VanBaren, Gerald (AGRE); linuxppc-embedded@lists.linuxppc.org;
'wd@denx.de'
Subject: RE: Question on the fs choice


Gerald, Wolfgang,
[snip]
I've contacted SanDisk regarding their warranty of surviving a power
shortage in the middle of a write-cycle and received a
document explaining
the expected behavior.
Here's an introductory quote:
[snip]
These particular SanDisk cards are equipped with an enhanced
version of the
internal controller that is capable of surviving such
scenario leaving the
card in a robust state.
At worst, the user loses the data that was being written to a
particular
sector while the power failure happened.
Case 1: the data errors are corrected
Case 2: the old data is restored back to the sector
Case 3: the user loses the data on the sector

One of the recommendations was to implement a 100 millisecond
power back-up
provided for the card to finish its internal write cycle. Of
course, this
can only be applied  to the systems where the user cannot
yank the card out
directly. For example, digital cameras have a sensor on the
card's cover to
signal such event.
The 100mSec power holdup (implying a power fail interrupt to the processor and associated cleanup code so it does not write to the CF when the power goes away) is very important.  The case I was referring to previously had no power fail warning (it was raw flash, not CF, but unless your CF has BIG caps built in this is immaterial).  A very low but NON-zero percentage of the time, the processor would start a write sequence and power would fail before the start address was set properly: probably between the write unlock sequence and the actual write to the device.  I speculate that the flash is then vulnerable since the write sequence was successfully completed, and the processor did some random writes that happened to hit the flash address space as its address, data, and control lines spasmed due to the power loss.  In this case the flash chip would scribble on a random sector.  Bad, really bad.
Coming back to the CF card discussion subject, does anybody
know how the
"power failure" scenario is resolved at such commercial
platforms as pocket
pc's and digital cameras utilizing CF cards?
They all (?) use the FAT (VFAT) file system and I would speculate that they do not do any write caching (almost universal FAT file system convention).  Then they close their eyes and hope for the best ;-).  Seriously, they all warn you in the manual to NOT remove the CF while it is busy.

Incidentally, you can mount linux file systems with inhibited caching (use the "sync" option for synchronous writing -- i.e. no write caching).  A journaling file system is probably better, but putting "sync" in your /etc/fstab would be a simple and easy fix to try.

gvb


** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help