From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:45150) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SfWfl-00028n-6V for qemu-devel@nongnu.org; Fri, 15 Jun 2012 09:34:46 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SfWfe-0004w5-HI for qemu-devel@nongnu.org; Fri, 15 Jun 2012 09:34:44 -0400 Received: from mx1.redhat.com ([209.132.183.28]:26341) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SfWfe-0004va-9B for qemu-devel@nongnu.org; Fri, 15 Jun 2012 09:34:38 -0400 From: Kevin Wolf Date: Fri, 15 Jun 2012 15:33:39 +0200 Message-Id: <1339767219-24297-40-git-send-email-kwolf@redhat.com> In-Reply-To: <1339767219-24297-1-git-send-email-kwolf@redhat.com> References: <1339767219-24297-1-git-send-email-kwolf@redhat.com> Subject: [Qemu-devel] [PATCH 39/39] qemu-iotests: add 036 autoclear feature bit test List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: anthony@codemonkey.ws Cc: kwolf@redhat.com, qemu-devel@nongnu.org From: Stefan Hajnoczi This new test validates the autoclear feature bit behavior. When QEMU opens a qcow2v3 image file with an unknown autoclear feature bit the bit should be cleared in the image file header. Signed-off-by: Stefan Hajnoczi Signed-off-by: Kevin Wolf --- tests/qemu-iotests/036 | 68 ++++++++++++++++++++++++++++++++++++++++++++ tests/qemu-iotests/036.out | 52 +++++++++++++++++++++++++++++++++ tests/qemu-iotests/group | 1 + 3 files changed, 121 insertions(+), 0 deletions(-) create mode 100755 tests/qemu-iotests/036 create mode 100644 tests/qemu-iotests/036.out diff --git a/tests/qemu-iotests/036 b/tests/qemu-iotests/036 new file mode 100755 index 0000000..329533e --- /dev/null +++ b/tests/qemu-iotests/036 @@ -0,0 +1,68 @@ +#!/bin/bash +# +# Test that qcow2 unknown autoclear feature bits are cleared +# +# Copyright (C) 2011 Red Hat, Inc. +# Copyright IBM, Corp. 2010 +# +# Based on test 031. +# +# 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 . +# + +# creator +owner=stefanha@linux.vnet.ibm.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 +. ./common.pattern + +# This tests qcow2-specific low-level functionality +_supported_fmt qcow2 +_supported_proto generic +_supported_os Linux + +# Only qcow2v3 and later supports feature bits +IMGOPTS="compat=1.1" + +echo === Create image with unknown autoclear feature bit === +echo +_make_test_img 64M +./qcow2.py $TEST_IMG set-feature-bit autoclear 63 +./qcow2.py $TEST_IMG dump-header + +echo +echo === Repair image === +echo +$QEMU_IMG check -r all $TEST_IMG +./qcow2.py $TEST_IMG dump-header + +# success, all done +echo "*** done" +rm -f $seq.full +status=0 diff --git a/tests/qemu-iotests/036.out b/tests/qemu-iotests/036.out new file mode 100644 index 0000000..6953e37 --- /dev/null +++ b/tests/qemu-iotests/036.out @@ -0,0 +1,52 @@ +QA output created by 036 +=== Create image with unknown autoclear feature bit === + +Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864 +magic 0x514649fb +version 3 +backing_file_offset 0x0 +backing_file_size 0x0 +cluster_bits 16 +size 67108864 +crypt_method 0 +l1_size 1 +l1_table_offset 0x30000 +refcount_table_offset 0x10000 +refcount_table_clusters 1 +nb_snapshots 0 +snapshot_offset 0x0 +incompatible_features 0x0 +compatible_features 0x0 +autoclear_features 0x8000000000000000 +refcount_order 4 +header_length 104 + + +=== Repair image === + +No errors were found on the image. +magic 0x514649fb +version 3 +backing_file_offset 0x0 +backing_file_size 0x0 +cluster_bits 16 +size 67108864 +crypt_method 0 +l1_size 1 +l1_table_offset 0x30000 +refcount_table_offset 0x10000 +refcount_table_clusters 1 +nb_snapshots 0 +snapshot_offset 0x0 +incompatible_features 0x0 +compatible_features 0x0 +autoclear_features 0x0 +refcount_order 4 +header_length 104 + +Header extension: +magic 0x6803f857 +length 0 +data '' + +*** done diff --git a/tests/qemu-iotests/group b/tests/qemu-iotests/group index 14230ce..7a2c92b 100644 --- a/tests/qemu-iotests/group +++ b/tests/qemu-iotests/group @@ -42,5 +42,6 @@ 033 rw auto 034 rw auto backing 035 rw auto quick +036 rw auto quick 037 rw auto backing 038 rw auto backing -- 1.7.6.5