From 3baa84491a43c6ba4909cbff69a9f045df9f4879 Mon Sep 17 00:00:00 2001 From: Fam Zheng Date: Wed, 4 Dec 2013 09:06:58 +0800 Subject: qemu-iotests: Add "-c " option The option sets cache mode used in the tests. "-nocache" is changed to an alias to "-c none", and internally passes "-t none" to qemu-io. Python scripts will make use of option this in the next commit. Signed-off-by: Fam Zheng Reviewed-by: Wenchao Xia Signed-off-by: Stefan Hajnoczi --- tests/qemu-iotests/check | 2 +- tests/qemu-iotests/common | 21 +++++++++++++++++++-- 2 files changed, 20 insertions(+), 3 deletions(-) (limited to 'tests/qemu-iotests') diff --git a/tests/qemu-iotests/check b/tests/qemu-iotests/check index f5f328f5f5..dc0105c9f5 100755 --- a/tests/qemu-iotests/check +++ b/tests/qemu-iotests/check @@ -242,7 +242,7 @@ do fi reference=$seq.out - if (echo $QEMU_IO_OPTIONS | grep -s -- '--nocache' > /dev/null); then + if [ "$CACHEMODE" = "none" ]; then [ -f $seq.out.nocache ] && reference=$seq.out.nocache fi diff --git a/tests/qemu-iotests/common b/tests/qemu-iotests/common index 8cde7f11fa..4743c9e007 100644 --- a/tests/qemu-iotests/common +++ b/tests/qemu-iotests/common @@ -42,13 +42,16 @@ expunge=true have_test_arg=false randomize=false valgrind=false +cachemode=false rm -f $tmp.list $tmp.tmp $tmp.sed export IMGFMT=raw export IMGFMT_GENERIC=true export IMGPROTO=file export IMGOPTS="" +export CACHEMODE="writethrough" export QEMU_IO_OPTIONS="" +export CACHEMODE_IS_DEFAULT=true for r do @@ -113,7 +116,12 @@ s/ .*//p IMGOPTS="$r" imgopts=false continue - + elif $cachemode + then + CACHEMODE="$r" + CACHEMODE_IS_DEFAULT=false + cachemode=false + continue fi xpand=true @@ -147,6 +155,7 @@ check options -o options -o options to pass to qemu-img create/convert -T output timestamps -r randomize test order + -c mode cache mode testlist options -g group[,group...] include tests from these groups @@ -219,7 +228,8 @@ testlist options xpand=false ;; -nocache) - QEMU_IO_OPTIONS="$QEMU_IO_OPTIONS --nocache" + CACHEMODE="none" + CACHEMODE_IS_DEFAULT=false xpand=false ;; @@ -258,6 +268,10 @@ testlist options imgopts=true xpand=false ;; + -c) + cachemode=true + xpand=false + ;; -r) # randomize test order randomize=true xpand=false @@ -334,6 +348,9 @@ BEGIN { for (t='$start'; t<='$end'; t++) printf "%03d\n",t }' \ done +# Set qemu-io cache mode with $CACHEMODE we have +QEMU_IO_OPTIONS="$QEMU_IO_OPTIONS --cache $CACHEMODE" + # Set default options for qemu-img create -o if they were not specified _set_default_imgopts -- cgit v1.2.1