Message ID | 372526c6be134b0e748d06129a41d7b5838030b2.1390373621.git.hutao@cn.fujitsu.com |
---|---|
State | New |
Headers | show |
Am 22.01.2014 um 07:57 hat Hu Tao geschrieben: > Signed-off-by: Hu Tao <hutao@cn.fujitsu.com> > --- > > Note: the current largest test case number is 074, but Kevin suggested picking > 079 as there are in-flight patches taken lower numbers. > > tests/qemu-iotests/079 | 69 ++++++++++++++++++++++++++++++++++++++++++++++ > tests/qemu-iotests/079.out | 32 +++++++++++++++++++++ > tests/qemu-iotests/group | 1 + > 3 files changed, 102 insertions(+) > create mode 100755 tests/qemu-iotests/079 > create mode 100644 tests/qemu-iotests/079.out > > diff --git a/tests/qemu-iotests/079 b/tests/qemu-iotests/079 > new file mode 100755 > index 0000000..5df045b > --- /dev/null > +++ b/tests/qemu-iotests/079 > @@ -0,0 +1,69 @@ > +#!/bin/bash > +# > +# Test qcow2 preallocation with different cluster_sizes > +# > +# Copyright (C) 2014 Fujitsu. > +# > +# This program is free software; you can redistribute it and/or modify > +# it under the terms of the GNU General Public License as published by > +# the Free Software Foundation; either version 2 of the License, or > +# (at your option) any later version. > +# > +# This program is distributed in the hope that it will be useful, > +# but WITHOUT ANY WARRANTY; without even the implied warranty of > +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > +# GNU General Public License for more details. > +# > +# You should have received a copy of the GNU General Public License > +# along with this program. If not, see <http://www.gnu.org/licenses/>. > +# > + > +# creator > +owner=hutao@cn.fujitsu.com > + > +seq=`basename $0` > +echo "QA output created by $seq" > + > +here=`pwd` > +tmp=/tmp/$$ > +status=1 # failure is the default! > + > +_cleanup() > +{ > + _cleanup_test_img > +} > +trap "_cleanup; exit \$status" 0 1 2 3 15 > + > +# get standard environment, filters and checks > +. ./common.rc > +. ./common.filter > + > +_supported_fmt qcow2 > +_supported_proto file > +_supported_os Linux > + > +function filter_test_dir() > +{ > + sed -e "s#$IMGPROTO:$TEST_DIR#TEST_DIR#g" \ > + -e "s#$TEST_DIR#TEST_DIR#g" > +} Can't you use _filter_testdir() from common.filter? If you need the additional $IMGPROTO: filter that is missing there, I think we can add it to the common.filter function. Kevin
On Wed, Jan 22, 2014 at 11:02:09AM +0100, Kevin Wolf wrote: > Am 22.01.2014 um 07:57 hat Hu Tao geschrieben: > > Signed-off-by: Hu Tao <hutao@cn.fujitsu.com> > > --- > > > > Note: the current largest test case number is 074, but Kevin suggested picking > > 079 as there are in-flight patches taken lower numbers. > > > > tests/qemu-iotests/079 | 69 ++++++++++++++++++++++++++++++++++++++++++++++ > > tests/qemu-iotests/079.out | 32 +++++++++++++++++++++ > > tests/qemu-iotests/group | 1 + > > 3 files changed, 102 insertions(+) > > create mode 100755 tests/qemu-iotests/079 > > create mode 100644 tests/qemu-iotests/079.out > > > > diff --git a/tests/qemu-iotests/079 b/tests/qemu-iotests/079 > > new file mode 100755 > > index 0000000..5df045b > > --- /dev/null > > +++ b/tests/qemu-iotests/079 > > @@ -0,0 +1,69 @@ > > +#!/bin/bash > > +# > > +# Test qcow2 preallocation with different cluster_sizes > > +# > > +# Copyright (C) 2014 Fujitsu. > > +# > > +# This program is free software; you can redistribute it and/or modify > > +# it under the terms of the GNU General Public License as published by > > +# the Free Software Foundation; either version 2 of the License, or > > +# (at your option) any later version. > > +# > > +# This program is distributed in the hope that it will be useful, > > +# but WITHOUT ANY WARRANTY; without even the implied warranty of > > +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > > +# GNU General Public License for more details. > > +# > > +# You should have received a copy of the GNU General Public License > > +# along with this program. If not, see <http://www.gnu.org/licenses/>. > > +# > > + > > +# creator > > +owner=hutao@cn.fujitsu.com > > + > > +seq=`basename $0` > > +echo "QA output created by $seq" > > + > > +here=`pwd` > > +tmp=/tmp/$$ > > +status=1 # failure is the default! > > + > > +_cleanup() > > +{ > > + _cleanup_test_img > > +} > > +trap "_cleanup; exit \$status" 0 1 2 3 15 > > + > > +# get standard environment, filters and checks > > +. ./common.rc > > +. ./common.filter > > + > > +_supported_fmt qcow2 > > +_supported_proto file > > +_supported_os Linux > > + > > +function filter_test_dir() > > +{ > > + sed -e "s#$IMGPROTO:$TEST_DIR#TEST_DIR#g" \ > > + -e "s#$TEST_DIR#TEST_DIR#g" > > +} > > Can't you use _filter_testdir() from common.filter? Yes, it works. Thanks!
diff --git a/tests/qemu-iotests/079 b/tests/qemu-iotests/079 new file mode 100755 index 0000000..5df045b --- /dev/null +++ b/tests/qemu-iotests/079 @@ -0,0 +1,69 @@ +#!/bin/bash +# +# Test qcow2 preallocation with different cluster_sizes +# +# Copyright (C) 2014 Fujitsu. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# + +# creator +owner=hutao@cn.fujitsu.com + +seq=`basename $0` +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! + +_cleanup() +{ + _cleanup_test_img +} +trap "_cleanup; exit \$status" 0 1 2 3 15 + +# get standard environment, filters and checks +. ./common.rc +. ./common.filter + +_supported_fmt qcow2 +_supported_proto file +_supported_os Linux + +function filter_test_dir() +{ + sed -e "s#$IMGPROTO:$TEST_DIR#TEST_DIR#g" \ + -e "s#$TEST_DIR#TEST_DIR#g" +} + +function test_qemu_img() +{ + echo qemu-img "$@" | filter_test_dir + $QEMU_IMG "$@" 2>&1 | filter_test_dir + echo +} + +echo "=== Check option preallocation and cluster_size ===" +echo +cluster_sizes="16384 32768 65536 131072 262144 524288 1048576 2097152 4194304" + +for s in $cluster_sizes; do + test_qemu_img create -f $IMGFMT -o preallocation=metadata,cluster_size=$s "$TEST_IMG" 4G +done + +# success, all done +echo "*** done" +rm -f $seq.full +status=0 diff --git a/tests/qemu-iotests/079.out b/tests/qemu-iotests/079.out new file mode 100644 index 0000000..ef4b8c9 --- /dev/null +++ b/tests/qemu-iotests/079.out @@ -0,0 +1,32 @@ +QA output created by 079 +=== Check option preallocation and cluster_size === + +qemu-img create -f qcow2 -o preallocation=metadata,cluster_size=16384 TEST_DIR/t.qcow2 4G +Formatting 'TEST_DIR/t.qcow2', fmt=qcow2 size=4294967296 encryption=off cluster_size=16384 preallocation='metadata' lazy_refcounts=off + +qemu-img create -f qcow2 -o preallocation=metadata,cluster_size=32768 TEST_DIR/t.qcow2 4G +Formatting 'TEST_DIR/t.qcow2', fmt=qcow2 size=4294967296 encryption=off cluster_size=32768 preallocation='metadata' lazy_refcounts=off + +qemu-img create -f qcow2 -o preallocation=metadata,cluster_size=65536 TEST_DIR/t.qcow2 4G +Formatting 'TEST_DIR/t.qcow2', fmt=qcow2 size=4294967296 encryption=off cluster_size=65536 preallocation='metadata' lazy_refcounts=off + +qemu-img create -f qcow2 -o preallocation=metadata,cluster_size=131072 TEST_DIR/t.qcow2 4G +Formatting 'TEST_DIR/t.qcow2', fmt=qcow2 size=4294967296 encryption=off cluster_size=131072 preallocation='metadata' lazy_refcounts=off + +qemu-img create -f qcow2 -o preallocation=metadata,cluster_size=262144 TEST_DIR/t.qcow2 4G +Formatting 'TEST_DIR/t.qcow2', fmt=qcow2 size=4294967296 encryption=off cluster_size=262144 preallocation='metadata' lazy_refcounts=off + +qemu-img create -f qcow2 -o preallocation=metadata,cluster_size=524288 TEST_DIR/t.qcow2 4G +Formatting 'TEST_DIR/t.qcow2', fmt=qcow2 size=4294967296 encryption=off cluster_size=524288 preallocation='metadata' lazy_refcounts=off + +qemu-img create -f qcow2 -o preallocation=metadata,cluster_size=1048576 TEST_DIR/t.qcow2 4G +Formatting 'TEST_DIR/t.qcow2', fmt=qcow2 size=4294967296 encryption=off cluster_size=1048576 preallocation='metadata' lazy_refcounts=off + +qemu-img create -f qcow2 -o preallocation=metadata,cluster_size=2097152 TEST_DIR/t.qcow2 4G +Formatting 'TEST_DIR/t.qcow2', fmt=qcow2 size=4294967296 encryption=off cluster_size=2097152 preallocation='metadata' lazy_refcounts=off + +qemu-img create -f qcow2 -o preallocation=metadata,cluster_size=4194304 TEST_DIR/t.qcow2 4G +qemu-img: TEST_DIR/t.qcow2: Cluster size must be a power of two between 512 and 2048k +Formatting 'TEST_DIR/t.qcow2', fmt=qcow2 size=4294967296 encryption=off cluster_size=4194304 preallocation='metadata' lazy_refcounts=off + +*** done diff --git a/tests/qemu-iotests/group b/tests/qemu-iotests/group index cc750c9..3bb22c2 100644 --- a/tests/qemu-iotests/group +++ b/tests/qemu-iotests/group @@ -79,3 +79,4 @@ 070 rw auto 073 rw auto 074 rw auto +079 rw auto
Signed-off-by: Hu Tao <hutao@cn.fujitsu.com> --- Note: the current largest test case number is 074, but Kevin suggested picking 079 as there are in-flight patches taken lower numbers. tests/qemu-iotests/079 | 69 ++++++++++++++++++++++++++++++++++++++++++++++ tests/qemu-iotests/079.out | 32 +++++++++++++++++++++ tests/qemu-iotests/group | 1 + 3 files changed, 102 insertions(+) create mode 100755 tests/qemu-iotests/079 create mode 100644 tests/qemu-iotests/079.out