From: Dmitry Monakhov <dmonakhov@openvz.org>
To: xfs@oss.sgi.com
Cc: linux-ext4@vger.kernel.org, linux-fsdevel@vger.kernel.org,
dchinner@redhat.com, Dmitry Monakhov <dmonakhov@openvz.org>
Subject: [PATCH 01/10] xfstests: add fio requirement V2
Date: Wed, 20 Feb 2013 14:42:06 +0400 [thread overview]
Message-ID: <1361356935-29153-2-git-send-email-dmonakhov@openvz.org> (raw)
In-Reply-To: <1361356935-29153-1-git-send-email-dmonakhov@openvz.org>
FIO is very flexible io generator, I would call it IO swiss knife.
Currently we have tonns of hardcoded application which reproduces
some predefined scenario. This approach has obvious dissadvantages
1) Lack of flexability: one written it is hard to modify it in future
2) Code base is large, many routines written again and again
At the same time add new fio based tast is just add simle INI file.
This greatly simplify code review. I do beleve that some day we will
replace most of hardcoded io binaries with fio.
One who is planning to run $FIO_PROG should first check that system
contains appropriate version which is able to handle jobfile
for example: _require_fio 286-job.fio
Signed-off-by: Dmitry Monakhov <dmonakhov@openvz.org>
---
common.config | 1 +
common.rc | 15 +++++++++++++++
2 files changed, 16 insertions(+), 0 deletions(-)
diff --git a/common.config b/common.config
index 827c718..7681812 100644
--- a/common.config
+++ b/common.config
@@ -159,6 +159,7 @@ export KILLALL_PROG="`set_prog_path killall`"
export INDENT_PROG="`set_prog_path indent`"
export XFS_COPY_PROG="`set_prog_path xfs_copy`"
export FSTRIM_PROG="`set_prog_path fstrim`"
+export FIO_PROG="`set_prog_path fio`"
# Generate a comparable xfsprogs version number in the form of
# major * 10000 + minor * 100 + release
diff --git a/common.rc b/common.rc
index 2e8581e..14de47b 100644
--- a/common.rc
+++ b/common.rc
@@ -1789,6 +1789,21 @@ _require_freeze()
[ $result -eq 0 ] || _notrun "$FSTYP does not support freezing"
}
+# Check that fio is present, and it is able to execute given jobfile
+_require_fio()
+{
+ job=$1
+
+ _require_command $FIO_PROG
+ if [ -z "$1" ]; then
+ return 1;
+ fi
+
+ $FIO_PROG --warnings-fatal --showcmd $job >/dev/null 2>&1
+ [ $? -eq 0 ] || _notrun "$FIO_PROG too old"
+}
+
+
# arg 1 is dev to remove and is output of the below eg.
# ls -l /sys/class/block/sdd | rev | cut -d "/" -f 3 | rev
_devmgt_remove()
--
1.7.1
next prev parent reply other threads:[~2013-02-20 10:42 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-20 10:42 [PATCH 00/10] xfstests: Stress tests improments v5 Dmitry Monakhov
2013-02-20 10:42 ` Dmitry Monakhov [this message]
2013-03-01 15:43 ` [PATCH 01/10] xfstests: add fio requirement V2 Rich Johnston
2013-02-20 10:42 ` [PATCH 02/10] xfstest: add configurable load factors Dmitry Monakhov
2013-03-01 15:43 ` Rich Johnston
2013-02-20 10:42 ` [PATCH 03/10] xfstests: hardcode fops for determinable fsstests runs Dmitry Monakhov
2013-03-01 15:43 ` Rich Johnston
2013-02-20 10:42 ` [PATCH 04/10] xfstets: fsstress add replace file operation Dmitry Monakhov
2013-03-01 15:43 ` Rich Johnston
2013-02-20 10:42 ` [PATCH 05/10] xfstest: allow fsstress to use load factor where appropriate Dmitry Monakhov
2013-03-01 15:43 ` Rich Johnston
2013-02-20 10:42 ` [PATCH 06/10] xfstest: move run_check to common.rc Dmitry Monakhov
2013-03-01 15:44 ` Rich Johnston
2013-02-20 10:42 ` [PATCH 07/10] xfstest: add fallocate/truncate vs AIO/DIO stress test Dmitry Monakhov
2013-03-01 17:49 ` Rich Johnston
2013-02-20 10:42 ` [PATCH 08/10] xfstest: add fallocate/punch_hole " Dmitry Monakhov
2013-03-01 17:50 ` Rich Johnston
2013-02-20 10:42 ` [PATCH 09/10] xfstest: add defragmentation stress tests for ext4 Dmitry Monakhov
2013-03-01 19:23 ` Rich Johnston
2013-03-02 1:30 ` Dmitry Monakhov
2013-03-04 23:19 ` Rich Johnston
2013-03-03 16:43 ` Zheng Liu
2013-03-03 17:23 ` Zheng Liu
2013-02-20 10:42 ` [PATCH 10/10] xfstests: add disk failure simulation test Dmitry Monakhov
2013-03-01 20:11 ` Rich Johnston
2013-03-02 1:49 ` Dmitry Monakhov
2013-03-04 23:44 ` Rich Johnston
2013-02-25 15:45 ` [PATCH 00/10] xfstests: Stress tests improments v5 Theodore Ts'o
2013-02-25 21:28 ` Ben Myers
2013-02-25 22:09 ` Dave Chinner
2013-02-25 23:00 ` Ben Myers
2013-03-01 20:23 ` Rich Johnston
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=1361356935-29153-2-git-send-email-dmonakhov@openvz.org \
--to=dmonakhov@openvz.org \
--cc=dchinner@redhat.com \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=xfs@oss.sgi.com \
/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;
as well as URLs for NNTP newsgroup(s).