From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:46544) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Sf9dX-00084C-3r for qemu-devel@nongnu.org; Thu, 14 Jun 2012 08:59:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Sf9dU-0003bd-UG for qemu-devel@nongnu.org; Thu, 14 Jun 2012 08:58:54 -0400 Received: from e06smtp16.uk.ibm.com ([195.75.94.112]:46418) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Sf9dU-0003bF-Ky for qemu-devel@nongnu.org; Thu, 14 Jun 2012 08:58:52 -0400 Received: from /spool/local by e06smtp16.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 14 Jun 2012 13:58:48 +0100 Received: from d06av11.portsmouth.uk.ibm.com (d06av11.portsmouth.uk.ibm.com [9.149.37.252]) by d06nrmr1806.portsmouth.uk.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id q5ECwP6v2719918 for ; Thu, 14 Jun 2012 13:58:25 +0100 Received: from d06av11.portsmouth.uk.ibm.com (loopback [127.0.0.1]) by d06av11.portsmouth.uk.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id q5ECwOrQ016029 for ; Thu, 14 Jun 2012 06:58:25 -0600 From: Stefan Hajnoczi Date: Thu, 14 Jun 2012 13:58:18 +0100 Message-Id: <1339678698-17726-4-git-send-email-stefanha@linux.vnet.ibm.com> In-Reply-To: <1339678698-17726-1-git-send-email-stefanha@linux.vnet.ibm.com> References: <1339678698-17726-1-git-send-email-stefanha@linux.vnet.ibm.com> Subject: [Qemu-devel] [PATCH v2 3/3] qemu-iotests: add 036 autoclear feature bit test List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Kevin Wolf Cc: qemu-devel@nongnu.org, 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 --- tests/qemu-iotests/036 | 68 ++++++++++++++++++++++++++++++++++++++++++++ tests/qemu-iotests/036.out | 52 +++++++++++++++++++++++++++++++++ tests/qemu-iotests/group | 1 + 3 files changed, 121 insertions(+) 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 36ebf1a..f9b0f5b 100644 --- a/tests/qemu-iotests/group +++ b/tests/qemu-iotests/group @@ -42,3 +42,4 @@ 033 rw auto 034 rw auto backing 035 rw auto quick +036 rw auto quick -- 1.7.10