Ideally, this issue should be addressed before 2.4.19 goes official.
(I have not tested recent releases of this 2.4.19, so I can't say
whether it was fixed incidentally.)
Also, later on I learned that one must "cd" into the mounted ramdisk
to cause the corruption.
(All this was done on a RedHat 7.1 system with kernel 2.4.18 and
mount-2.11n-7. The problem does not happen on a RedHat 7.1 system
with kernel 2.4.17. )
The following was discovered attempting to use mkcdrec to make a backup.
I do the following to setup a ram disk on /dev/ram0...
dd if=/dev/zero of=/dev/ram0 bs=1k count=4096
mkfs.ext2 /dev/ram0 -m 0 -N 4096
This ram disk checks OK with fsck -f.
I mount it and already the lost+found directory is not there.
If unmount and force fsck, I get...
fsck 1.25 (20-Sep-2001)
e2fsck 1.25 (20-Sep-2001)
Pass 1: Checking inodes, blocks, and sizes
Duplicate blocks found... invoking duplicate block passes.
Pass 1B: Rescan for duplicate/bad blocks
Duplicate/bad block(s) in inode 2: 52
Pass 1C: Scan directories for inodes with dup blocks.
Pass 1D: Reconciling duplicate blocks
(There are 1 inodes containing duplicate/bad blocks.)
File / (inode #2, mod time Fri Mar 1 21:03:59 2002)
has 1 duplicate block(s), shared with 1 file(s):
Clone duplicate/bad blocks<y>? yes
Pass 2: Checking directory structure
Directory inode 2, block 0, offset 0: directory corrupted
Missing '.' in directory inode 2.
Setting filetype for entry '.' in ??? (2) to 2.
Missing '..' in directory inode 2.
Setting filetype for entry '..' in ??? (2) to 2.
Pass 3: Checking directory connectivity
'..' in / (2) is <The NULL inode> (0), should be / (2).
Unconnected directory inode 11 (/???)
Connect to /lost+found<y>? yes
/lost+found not found. Create<y>? yes
Pass 4: Checking reference counts
Inode 2 ref count is 10, should be 3. Fix<y>? yes
Inode 11 ref count is 3, should be 2. Fix<y>? yes
Pass 5: Checking group summary information
Free blocks count wrong for group #0 (3566, counted=3565).
Free blocks count wrong (3566, counted=3565).
Free inodes count wrong for group #0 (4085, counted=4084).
Directories count wrong for group #0 (2, counted=3).
Free inodes count wrong (4085, counted=4084).
If I mount the disk, lost+found is still missing. If I unmount and
force fsck, I get the same result above.
Maurice Volaski, email@example.com Computing Support, Rose F. Kennedy Center Albert Einstein College of Medicine of Yeshiva University - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to firstname.lastname@example.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/