RE: Question on the fs choice
From: VanBaren, Gerald (AGRE) <hidden>
Date: 2004-05-12 12:36:53
Journaling file systems don't cure corruption on power fail, they just make the power fail recovery faster by eliminating the full fsck disk scan and significantly reduce the probability of corruption due to the transactional nature. The assumption with a journaling file system is that the power fail only corrupted the last (partial) transaction. With normal usage patterns this is a good assumption (spinning disk physics probably help, but write caches in disks are going to hurt). With CF under heavy power failure cycles, this might not be as good an assumption. There was a slashdot item yesterday pointing to a benchmark of various journaling file systems. In the discussion, one point that was made was that ext3 journals the data as well as the metadata by default where the other journaling file systems journal only the metadata (directory info). I presume this was accurate (hey, it was on ./ which guarantees accuracy, right? ;-). Whichever fs you pick, you probably want to journal the data as well as the metadata. A suggestion is to have multiple partitions on your CF and use RAID-3 or RAID-5. The assumption here is that a power fail-induced physical corruption would corrupt only one of the partitions which could then be rebuilt due to the RAID redundancy. The journaled file system would then eliminate the fsck on start up and make the file system itself consistant and the RAID redundancy would (presumably) fix any low level errors that the unexpected power fail could induce. ...or maybe a journaling file system is good enough. gvb
-----Original Message----- From: owner-linuxppc-embedded@lists.linuxppc.org [mailto:owner-linuxppc-embedded@lists.linuxppc.org]On Behalf Of Zajac Adam-AAZ004 Sent: Tuesday, May 11, 2004 7:20 PM To: 'linuxppc-embedded@lists.linuxppc.org' Subject: Question on the fs choice Hello, We've built a custom board based on MPC8540 that runs Linux OS and utilizes compact flash card to store the kernel on a raw-data partition (read-only) and root file system on an Ext2 partition (read-write). As Ext2 is not a journaling FS, in case of any power failure the file system is not cleanly unmounted and the fscheck complains upon a system start-up. Also, sometimes the file system partition gets corrupted when we power-cycle the card instead of shutting the system down gracefully (the card is build to be "hot-swappable" so we test it on purpose). I saw Wolfgang Denx's post discouraging any use of the CF cards for an embedded platform where write operations are performed under power-failure prone environment. Unfortunately, this is the reality we're facing on our card. I'm seeking some help with selecting the file system that would survive power failure if the CF card didn't get damaged during a write cycle (we're gonna perform a thorough testing to assess the severity of that issue). I've seen some articles suggesting one of the journaling systems, like Ext3, XFS or ReiserFS. Has anybody successfully implemented any of these FS systems on an embedded platform equipped with a compact flash card working as a main storage medium? Any help would be greatly appreciated. Adam Zajac Motorola Inc, Global Telecom Solutions Sector 5555 N Beach St, Mailstop 8E, Fort Worth, TX 76137-2794 Phone: (817) 245-7963
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/