[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20100420153723.GE25507@skl-net.de>
Date: Tue, 20 Apr 2010 17:37:23 +0200
From: Andre Noll <maan@...temlinux.org>
To: Eric Sandeen <sandeen@...hat.com>
Cc: Bernd Schubert <bernd.schubert@...tmail.fm>,
Andrew Vasquez <andrew.vasquez@...gic.com>,
"linux-ext4@...r.kernel.org" <linux-ext4@...r.kernel.org>,
Linux Driver <Linux-Driver@...gic.com>,
Thomas Helle <Helle@...bingen.mpg.de>
Subject: Re: ext4: (2.6.34-rc4): This should not happen!! Data will be lost
On 00:38, Andre Noll wrote:
> > I still don't think it's likely a filesystem problem but maybe you can
> > pinpoint the fs behavior that triggers it.
>
> I'll try to reproduce the problem using different timeout values and the
> ext4 options you suggest. If I can find a reliable reproducer, I'll run
> blktrace and post the results.
Here are some results. Prior to running the tests I wrote a bunch of
10G files and then filled the fs completely with 2T files containing
zeros. Each of the tests below consisted of three runs of
- remove 5 of the above 10G files to make 50G space available
- run stress -d 5 --hdd-bytes 10G --hdd-noclean until it dies
- run fsck if any fs errors occured
Summary: Increasing the device timeout to 60s _or_ disabling barriers
makes the problem go away. Deactivating delayed allocation makes the
problem worse.
- device timeout 60s, default ext4 parameters
No problems at all, all three runs OK
- device timeout 30s, default ext4 parameters
1. OK
2. dmesg:
qla2xxx 0000:06:09.0: scsi(0:0:0): Abort command issued -- 1 2ea270b 2002.
end_request: I/O error, dev sda, sector 7812889640
Aborting journal on device sda-8.
EXT4-fs error (device sda): ext4_journal_start_sb: Detected aborted journal
EXT4-fs (sda): Remounting filesystem read-only
fsck:
Inode 287, i_blocks is 4294918568, should be 416. Fix? yes
Inode 288, i_size is 2198897426432, should be 2199023251456. Fix? yes
Inode 288, i_blocks is 4294721960, should be 416. Fix? yes
3.
qla2xxx 0000:06:09.0: scsi(0:0:0): Abort command issued -- 1 2ece6a8 2002.
qla2xxx 0000:06:09.0: scsi(0:0:0): Abort command issued -- 1 2ece6dc 2002.
end_request: I/O error, dev sda, sector 7812690136
Aborting journal on device sda-8.
EXT4-fs error (device sda) in ext4_free_blocks: Journal has aborted
EXT4-fs error (device sda) in ext4_ext_remove_space: Journal has aborted
EXT4-fs error (device sda) in ext4_reserve_inode_write: Journal has aborted
EXT4-fs error (device sda) in ext4_ext_truncate: Journal has aborted
EXT4-fs error (device sda) in ext4_reserve_inode_write: Journal has aborted
EXT4-fs error (device sda) in ext4_orphan_del: Journal has aborted
EXT4-fs error (device sda) in ext4_reserve_inode_write: Journal has aborted
EXT4-fs error (device sda) in ext4_delete_inode: Journal has aborted
EXT4-fs error (device sda): ext4_journal_start_sb: Detected aborted journal
EXT4-fs (sda): Remounting filesystem read-only
fsck:
e2fsck 1.41.10 (10-Feb-2009)
/dev/sda: recovering journal
Clearing orphaned inode 179 (uid=0, gid=0, mode=0100600, size=0)
/dev/sda: clean, 301/244158464 files, 1935004235/1953247232 blocks
- device timeout 30s, nodelalloc
This seems to trigger the problem more reliably:
1.
dmesg: same qla, ext4 errors as above
fsck: orphaned inodes as above
2. and 3.
errors already while removing files:
rm: cannot remove `stress.98q1gG': Read-only file system
dmesg: same qla/ext4 errors, but also
JBD2: Detected IO errors while flushing file data on sda-8
fsck: clean
- device timeout 30s, nobarrier
No problem at all, all three runs OK.
Eric, are you still interested in seeing the blktrace output? Suppose,
I should use a 30s timeout, nodealloc and barriers=1 as this triggers
the problem within minutes.
Regards
Andre
--
The only person who always got his work done by Friday was Robinson Crusoe
Download attachment "signature.asc" of type "application/pgp-signature" (190 bytes)
Powered by blists - more mailing lists