Re: 2.2.18/ext2: special file corruption?

From: Andreas Dilger (adilger@turbolinux.com)
Date: Mon Feb 26 2001 - 12:48:58 EST


Ulrich Windl writes:
> I had an interesting effect: Due to NVdriver I had a lot of system
> freezes, and I had to reboot. Using e2fsck 1.19a (SuSE 7.1) I got the
> message that one specific "Special (device/socket/fifo) inode .. has
> non-zero size. FIXED."
>
> Interestingly I got the message for every reboot. So either the kernel
> corrupts the very same inode every time, or e2fsck does not really fix
> it, or the error simply doesn't exist. I think the kernel doesn't
> temporarily set the size to non-zero, so this seems strange.

It is strange that it thinks ".." is a special inode. Maybe e2fsck is
fixing the wrong problem (i.e. truncating the directory ".."), and it
later fixes the zero-length directory... Could you try two things:

1) unmount the filesystem and run e2fsck on the broken filesystem 1 or 2
   times, to see if e2fsck is fixing the problem or not.

2) If it is fixing the problem you need to wait until the next time you have
   a system crash, start in single user mode. If it is NOT fixing the problem
   you can do this right away. Run "e2fsck -n" to see which inode number is
   corrupt (the -n option means e2fsck will not fix the filesystem), and then
   run "debugfs /dev/X", type "dump <inode_number>" and "ncheck inode_number"
   at the prompt (note you NEED the <> around the inode number for dump).
   Send the output.

Cheers, Andreas

-- 
Andreas Dilger  \ "If a man ate a pound of pasta and a pound of antipasto,
                 \  would they cancel out, leaving him still hungry?"
http://www-mddsp.enel.ucalgary.ca/People/adilger/               -- Dogbert
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Wed Feb 28 2001 - 21:00:11 EST