I was looking around if there\'s some discussion about the use of JFFS (JFFS2) on an external SD card. I couldn\'t find that easily (if I overlooked one, let me know).
But here\'s the question: with the stock Z system, I could only make 2 kinds of filesystems on my sd card: either VFAT or EXT2. The former is not desirable because of its many limitations (no links, no casesensitive filenames...). The latter was one that I used. But lately I ended up with a filesystem with quite a bit of errors. I wonder if anybody ever encountered errors with SD+EXT2 card. The error is like this:
<snip>
sd flush : ERROR adr = 220856832 (0xd2a0200) , len = 15360 (0x3c00)
[SD]-R 0c00 0400 ERROR!
pxa_sd_wait_response: responce time out (cmd=07 MMC_STAT=0x2142)
sd_write_multiple(217741) : select error
sd flush : ERROR adr = 220856832 (0xd2a0200) , len = 15360 (0x3c00)
[SD]-R 0000 0400 ERROR!
pxa_sd_wait_response: responce time out (cmd=07 MMC_STAT=0x2142)
sd_write_multiple(217741) : select error
sd flush : ERROR adr = 220856832 (0xd2a0200) , len = 15360 (0x3c00)
[SD]-R 0400 0400 ERROR!
pxa_sd_wait_response: responce time out (cmd=07 MMC_STAT=0x2142)
sd_write_multiple(217741) : select error
sd flush : ERROR adr = 220856832 (0xd2a0200) , len = 15360 (0x3c00)
[SD]-R 0800 0400 ERROR!
pxa_sd_wait_response: responce time out (cmd=07 MMC_STAT=0x2142)
sd_write_multiple(217741) : select error
sd flush : ERROR adr = 220856832 (0xd2a0200) , len = 15360 (0x3c00)
[SD]-R 0c00 0400 ERROR!
unable to read partition table
pxa_sd_wait_response: responce time out (cmd=07 MMC_STAT=0x2142)
sd_write_multiple(217741) : select error
sd flush : ERROR adr = 220856832 (0xd2a0200) , len = 15360 (0x3c00)
VFS: Disk change detected on device mmcd(60,1)
mmcda:pxa_sd_wait_response: responce time out (cmd=07 MMC_STAT=0x2142)
sd_write_multiple(217741) : select error
sd flush : ERROR adr = 220856832 (0xd2a0200) , len = 15360 (0x3c00)
[SD]-R 0000 0400 ERROR!
<snip>
So depressing. I noticed this for the first time when I tried to untar an archive to this partition. Here\'s the typical e2fsck output:
z:/home/zaurus # more fsck-1.txt
z:/home/zaurus # e2fsck /dev/mmcda1
e2fsck 1.19, 13-Jul-2000 for EXT2 FS 0.5b, 95/08/09
/dev/mmcda1 was not cleanly unmounted, check forced.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Directory inode 40432, block 0, offset 0: directory corrupted
Salvage<y>? yes
Missing \'.\' in directory inode 40432.
Fix<y>? yes
Setting filetype for entry \'.\' in
(40432) to 2.
Missing \'..\' in directory inode 40432.
Fix<y>? yes
Setting filetype for entry \'..\' in
(40432) to 2.
Entry \'ComputeParams.cpp\' in /???/??? (52523) has deleted/unused inode 52530. C
lear<y>? yes
Pass 3: Checking directory connectivity
\'..\' in /Documents/hack-k2-kinetic (40432) is <The NULL inode> (0), should be /D
ocuments (4033).
Fix<y>? yes
Unconnected directory inode 52522 (/Documents/hack-k2-kinetic/???)
Connect to /lost+found<y>? yes
Unconnected directory inode 52523 (/Documents/hack-k2-kinetic/???)
Connect to /lost+found<y>? yes
Pass 4: Checking reference counts
Inode 2 ref count is 10, should be 11. Fix<y>? yes
Inode 4033 ref count is 14, should be 13. Fix<y>? yes
Unattached zero-length inode 40433. Clear<y>? yes
Unattached zero-length inode 40434. Clear<y>? yes
Inode 52522 ref count is 3, should be 2. Fix<y>? yes
Inode 52523 ref count is 3, should be 2. Fix<y>? yes
Pass 5: Checking group summary information
Block bitmap differences: -215628 -215629 -215630 -215631 -215632 -215633 -215634 -215635 -215636 -215637 -215638 -2154Fix<y>? yes
Free blocks count wrong for group #26 (5462, counted=5559).
Fix<y>? yes
Free blocks count wrong (66848, counted=66945).
Fix<y>? yes
Inode bitmap differences: -52530
Fix<y>? yes
Free inodes count wrong for group #20 (1902, counted=1904).
Fix<y>? yes
Free inodes count wrong for group #26 (1902, counted=1903).
Fix<y>? yes
Free inodes count wrong (59063, counted=59066).
Fix<y>? yes
/dev/mmcda1: ***** FILE SYSTEM WAS MODIFIED *****
/dev/mmcda1: 3430/62496 files (2.0% non-contiguous), 182860/249805 blocks
I wonder if it\'s merely software fault, that can be solved simply by reformatting, or if it\'s a hardware fault (i.e. bad sector).
Could anyone give some thought?
Also, this leads me to wonder if JFFS2 is actually better than EXT2 for use on a flash card. Its utilities (mkfs.jffs, etc.) don\'t come with the standard Z distro, unfortunately. :-(
Wirawan[/quote]