From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:53821) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W077q-00076C-J0 for qemu-devel@nongnu.org; Mon, 06 Jan 2014 05:09:43 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1W077l-0006cZ-KX for qemu-devel@nongnu.org; Mon, 06 Jan 2014 05:09:38 -0500 Received: from mx1.redhat.com ([209.132.183.28]:22510) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W077l-0006cN-Cq for qemu-devel@nongnu.org; Mon, 06 Jan 2014 05:09:33 -0500 Message-ID: <52CA80C2.2060103@redhat.com> Date: Mon, 06 Jan 2014 18:09:06 +0800 From: Fam Zheng MIME-Version: 1.0 References: <1388942528-10453-1-git-send-email-pl@kamp.de> <1388942528-10453-5-git-send-email-pl@kamp.de> <52CA3FC2.8060609@redhat.com> <52CA51B9.9040102@kamp.de> In-Reply-To: <52CA51B9.9040102@kamp.de> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCHv2 04/18] qemu-iotests: fix test 013 to work with any protocol List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Lieven , qemu-devel@nongnu.org Cc: Kevin Wolf , ronniesahlberg@gmail.com, Jeff Cody , Max Reitz , owasserm@redhat.com, Federico Simoncelli , Stefan Hajnoczi , Wenchao Xia On 2014=E5=B9=B401=E6=9C=8806=E6=97=A5 14:48, Peter Lieven wrote: > On 06.01.2014 06:31, Fam Zheng wrote: >> On 2014=E5=B9=B401=E6=9C=8806=E6=97=A5 01:21, Peter Lieven wrote: >>> Signed-off-by: Peter Lieven >>> --- >>> tests/qemu-iotests/013 | 9 ++++----- >>> tests/qemu-iotests/013.out | 2 +- >>> 2 files changed, 5 insertions(+), 6 deletions(-) >>> >>> diff --git a/tests/qemu-iotests/013 b/tests/qemu-iotests/013 >>> index ea3cab9..0dbc934 100755 >>> --- a/tests/qemu-iotests/013 >>> +++ b/tests/qemu-iotests/013 >>> @@ -41,14 +41,14 @@ trap "_cleanup; exit \$status" 0 1 2 3 15 >>> >>> # much of this could be generic for any format supporting compressi= on. >>> _supported_fmt qcow qcow2 >>> -_supported_proto file >>> +_supported_proto generic >>> _supported_os Linux >>> >>> TEST_OFFSETS=3D"0 4294967296" >>> TEST_OPS=3D"writev read write readv" >>> CLUSTER_SIZE=3D4096 >>> >> >> I think dropping these three TEST_IMG overriding change... >> >>> -_make_test_img 6G >>> +TEST_IMG=3D$TEST_IMG.orig _make_test_img 6G >> >> #1 >> >>> >>> echo "Testing empty image" >>> echo >>> @@ -56,16 +56,15 @@ echo >>> for offset in $TEST_OFFSETS; do >>> echo "At offset $offset:" >>> for op in $TEST_OPS; do >>> - io_test $op $offset $CLUSTER_SIZE 8 >>> + TEST_IMG=3D$TEST_IMG.orig io_test $op $offset $CLUSTER_SIZE = 8 >> >> #2 >> >>> done >>> - _check_test_img >>> + TEST_IMG=3D$TEST_IMG.orig _check_test_img >> >> #3 >> >>> done >>> >>> >>> echo "Compressing image" >>> echo >>> >>> -mv "$TEST_IMG" "$TEST_IMG.orig" >> >> and changing this to >> >> TEST_IMG=3D$TEST_IMG.orig _make_test_img 6G >> >> Should work. > Unfortunately it doesn't. All subsequent commands will then work > on $TEST_IMG.orig altough they shouldn't. In case of > 013 this is io_test, _check_test_img and the cleanup at the end. > Why? The overriding is temporary and subsequent commands are not affected. My proposal above doesn't work, though, because an empty new image=20 doesn't contain the right data, what is needed here is copy. So maybe=20 change the "mv" line to: $QEMU_IMG convert -f $IMGFMT -O $IMGFMT "$TEST_IMG" "$TEST_IMG.orig" could do the work, but I'm not sure if this fits every case. > There are 3 options: > - override it in every line that should use an alternate $TEST_IMG > - save the original $TEST_IMG and restore it. > - rework all commands to take the file as parameter and not use > a global variable for it. > > I choosed the first one because it makes clear which $TEST_IMG is acuta= lly > used. You see from the output and the code that you are dealing with th= e > file that is later used as $TEST_IMG.orig. If you see $TEST_IMG there y= ou > can't distinguish if its the backing or original file or the actual ima= ge. > > But I thought that this would be controversal. This is I why I splitted > the patch > into individual ones. So its possible to drop all these patches and > still be able > to proceed with the integration of the NFS protocol driver. I'll leave maintainers to decide. Fam