genfio: Adding exec_{pre|post}run support
It's pretty useful being able to run some commands before or after a
job. That could be use to ask some external storage array to loose its
cache or return in a particular configuration state.
The -A (stands for After) or -B (stands for Before) allow user to define
what commands shall be run before or after a job.
diff --git a/tools/genfio b/tools/genfio
index 3f9ab28..49cbd50 100755
--- a/tools/genfio
+++ b/tools/genfio
@@ -65,6 +65,8 @@
-x prefix : Add a prefix to the fio filename
Useful to let a context associated with the file
If the prefix features a / (slash), prefix will be considered as a directory
+-A cmd_to_run : System command to run after each job (exec_postrun in fio)
+-B cmd_to_run : System command to run before each job (exec_prerun in fio)
Example:
@@ -189,7 +191,7 @@
}
parse_cmdline() {
-while getopts "hacpsd:b:r:m:x:D:" opt; do
+while getopts "hacpsd:b:r:m:x:D:A:B:" opt; do
case $opt in
h)
show_help
@@ -239,6 +241,12 @@
a)
SEQ=2
;;
+ B)
+ echo "exec_prerun=$OPTARG" >> $TEMPLATE
+ ;;
+ A)
+ echo "exec_postrun=$OPTARG" >> $TEMPLATE
+ ;;
\?)
echo "Invalid option: -$OPTARG" >&2
;;