Skip to contentSkip to conversation

Strange file system errors

linux-lvm Kai Weber 3 participants 5 messages Jan 14, 2004 – Jan 16, 2004

lore
Share & tools
lore

Kai Weber

author
#0 lore raw

Hi,

if I have to reboot my system without a clean shutdown the recovered filesystems are corrupt. Files which I edited recently and maybe not yet written to the buffer are recovered with no or corrupt contents.

For example:

$ ls -l config
-rw-------    1 bond     bond        19622 Jan 14 12:04 .config
$ stat config
  File: `config'
  Size: 19622           Blocks: 0          IO Block: 4096   regular file
Device: fe01h/65025d    Inode: 20967432    Links: 1
Access: (0600/-rw-------)  Uid: ( 1000/    bond)   Gid: ( 1000/    bond)
Access: 2004-01-14 12:27:01.000000000 +0100
Modify: 2004-01-14 12:04:16.000000000 +0100
Change: 2004-01-14 12:04:16.000000000 +0100
$ cat config
$ less config
"config" may be a binary file.  See it anyway?
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
[...]
$ strace -e write cat config
write(1, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 4096
write(1, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 4096
write(1, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 4096
write(1, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 4096
write(1, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 3238) = 3238

I can force this error by pressing the reset button with an open file in my text editor. It seems to have nothing to do with the underlying file system. I have XFS and ext3 partitions. I would like to know, if it is a LVM problem.

Kernel 2.6.1

LVM version:     2.00.08 (2003-11-14)
Library version: 1.00.07-ioctl (2003-11-21)
Driver version:  4.0.0
Signature · 3 lines
  Kai Weber
» [email protected]
  http://www.glorybox.de
#1 lore raw
Quoted 30 lines · Kai Weber

Hi,

if I have to reboot my system without a clean shutdown the recovered filesystems are corrupt. Files which I edited recently and maybe not yet written to the buffer are recovered with no or corrupt contents.

For example:

$ ls -l config
-rw-------    1 bond     bond        19622 Jan 14 12:04 .config
$ stat config
  File: `config'
  Size: 19622           Blocks: 0          IO Block: 4096   regular file
Device: fe01h/65025d    Inode: 20967432    Links: 1
Access: (0600/-rw-------)  Uid: ( 1000/    bond)   Gid: ( 1000/    bond)
Access: 2004-01-14 12:27:01.000000000 +0100
Modify: 2004-01-14 12:04:16.000000000 +0100
Change: 2004-01-14 12:04:16.000000000 +0100
$ cat config
$ less config
"config" may be a binary file.  See it anyway?
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
[...]
$ strace -e write cat config
write(1, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 4096
write(1, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 4096
write(1, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 4096
write(1, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 4096
write(1, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 3238) = 3238
Quoted 4 lines

I can force this error by pressing the reset button with an open file in my text editor. It seems to have nothing to do with the underlying file system. I have XFS and ext3 partitions. I would like to know, if it is a LVM problem.

No.

Quoted 16 lines

Kernel 2.6.1

LVM version:     2.00.08 (2003-11-14)
Library version: 1.00.07-ioctl (2003-11-21)
Driver version:  4.0.0
Signature · 9 lines
  Kai Weber
» [email protected]
  http://www.glorybox.de

_______________________________________________
linux-lvm mailing list
[email protected]
http://lists.sistina.com/mailman/listinfo/linux-lvm
read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/
Signature · 15 lines
Regards,
Heinz    -- The LVM Guy --

*** Software bugs are stupid.
    Nevertheless it needs not so stupid people to solve them ***

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

Heinz Mauelshagen                                 Sistina Software Inc.
Senior Consultant/Developer                       Am Sonnenhang 11
                                                  56242 Marienrachdorf
                                                  Germany
[email protected]                           +49 2626 141200
                                                       FAX 924446
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
author
#2 lore raw

* Heinz Mauelshagen <[email protected]>:

Quoted 4 lines
Quoted 2 lines

system. I have XFS and ext3 partitions. I would like to know, if it is a LVM problem.

No.

Strange! If I do the test on my /boot partition, which is no LVM partition, the journal is recovered and the files are not corrupt.

Any suggestions (if it is no LVM problem) where I could ask about it?

Regards,

Signature · 3 lines
  Kai Weber
» [email protected]
  http://www.glorybox.de
#3 lore raw

Assuming you have IDE drives, it sounds like a write caching problem. This problem is amplified with the large caches on newer drives. A sudden power down causes the the data is the cache to be lost. The kernel doesn't know this has occured, because the drive lies, and claims that the cache has been flushed, resulting in file system _and_ journal corruption.

Try the tests again with write caching off. You can do this with "hdparm -W0 /dev/hdX"

Jord Tanner

Quoted 13 lines · Kai Weber

* Heinz Mauelshagen <[email protected]>:

Quoted 4 lines
Quoted 2 lines

system. I have XFS and ext3 partitions. I would like to know, if it is a LVM problem.

No.

Strange! If I do the test on my /boot partition, which is no LVM partition, the journal is recovered and the files are not corrupt.

Any suggestions (if it is no LVM problem) where I could ask about it?

Regards,

Signature · 1 line
Jord Tanner <[email protected]>
author
#4 lore raw

* Jord Tanner <[email protected]>:

Quoted 2 lines

Try the tests again with write caching off. You can do this with "hdparm -W0 /dev/hdX"

Thanks for your help. Until today I can not force the filesystem corruption with write caching off. Your tip seems to work. The downsize of disabled write caching seems to be a slightly slower system when writing large files to the disks.

OK. End Of Topic. and now to something completely different.

Signature · 3 lines
  Kai Weber
» [email protected]
  http://www.glorybox.de