From: Jens Axboe <jaxboe@fusionio.com>
To: tytso@mit.edu, adilger@sun.com
Cc: linux-ext4@vger.kernel.org
Subject: fio test triggering bad data on ext4
Date: Fri, 18 Jun 2010 10:07:08 +0200 [thread overview]
Message-ID: <4C1B292C.2080205@fusionio.com> (raw)
Hi,
I was writing a small fio job file to do writes and read verifies on a
device. It forks 32 processes, each writing randomly to 4 files with a
block size between 4k and 16k. When it has written 1024 of those blocks,
it'll verify the oldest 512 of them. Each block is checksummed for every
512b. It uses libaio and O_DIRECT.
It works on ext2 and btrfs. I haven't run it to completion yet, but they
survive 15-20 minutes just fine. ext4 doesn't even go a full minutes
before this triggers:
Bad verify header 0 at 10137600
fio: pid=9943, err=84/file:io_u.c:1212, func=io_u_queued_complete, error=Invalid or incomplete multibyte or wide character
writers: (groupid=0, jobs=32): err=84 (file:io_u.c:1212, func=io_u_queued_complete, error=Invalid or incomplete multibyte or wide character): pid=9943
which tells us that where we expected to find the correct verify magic
in the header, it was all zeroes. The job file used is below, and to
reproduce you want to use the latest fio (1.40) since some earlier
versions don't do verify_interval properly for non-pattern verifies. You
can get fio here:
http://brick.kernel.dk/snaps/fio-1.40.tar.gz
or from git at:
git://git.kernel.dk/fio.git
The kernel used is 2.6.35-rc3 and I ran this on a raid0 that had 8 SSD
drives.
--- snip job file ---
[global]
direct=1
group_reporting=1
exitall
runtime=4h
time_based=1
# writers, will repeatedly randomly write and verify data
[writers]
rw=randwrite
bsrange=4k-16k
ioengine=libaio
iodepth=4
directory=/data
verify=crc32c
verify_backlog=1024
verify_backlog_batch=512
verify_interval=512
size=512m
nrfiles=4
filesize=64m-256m
numjobs=32
create_serialize=0
--- snip job file ---
--
Jens Axboe
next reply other threads:[~2010-06-18 8:07 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-06-18 8:07 Jens Axboe [this message]
2010-06-18 14:02 ` fio test triggering bad data on ext4 Eric Sandeen
2010-06-18 14:59 ` Eric Sandeen
2010-06-18 15:13 ` Jens Axboe
2010-06-18 15:28 ` Eric Sandeen
2010-06-18 17:32 ` Jens Axboe
2010-06-18 18:04 ` Eric Sandeen
2010-06-18 18:14 ` Jens Axboe
2010-06-21 10:20 ` Jens Axboe
2010-06-18 17:36 ` Jens Axboe
2010-07-07 14:26 ` Eric Sandeen
2010-07-07 19:39 ` Jens Axboe
-- strict thread matches above, loose matches on Subject: below --
2010-06-21 9:37 Frank Mehnert
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4C1B292C.2080205@fusionio.com \
--to=jaxboe@fusionio.com \
--cc=adilger@sun.com \
--cc=linux-ext4@vger.kernel.org \
--cc=tytso@mit.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox