Statistics
| Branch: | Revision:

root / tests / qemu-iotests / 036 @ b3ce604e

History | View | Annotate | Download (1.6 kB)

1 d551cd50 Stefan Hajnoczi
#!/bin/bash
2 d551cd50 Stefan Hajnoczi
#
3 d551cd50 Stefan Hajnoczi
# Test that qcow2 unknown autoclear feature bits are cleared
4 d551cd50 Stefan Hajnoczi
#
5 d551cd50 Stefan Hajnoczi
# Copyright (C) 2011 Red Hat, Inc.
6 d551cd50 Stefan Hajnoczi
# Copyright IBM, Corp. 2010
7 d551cd50 Stefan Hajnoczi
#
8 d551cd50 Stefan Hajnoczi
# Based on test 031.
9 d551cd50 Stefan Hajnoczi
#
10 d551cd50 Stefan Hajnoczi
# This program is free software; you can redistribute it and/or modify
11 d551cd50 Stefan Hajnoczi
# it under the terms of the GNU General Public License as published by
12 d551cd50 Stefan Hajnoczi
# the Free Software Foundation; either version 2 of the License, or
13 d551cd50 Stefan Hajnoczi
# (at your option) any later version.
14 d551cd50 Stefan Hajnoczi
#
15 d551cd50 Stefan Hajnoczi
# This program is distributed in the hope that it will be useful,
16 d551cd50 Stefan Hajnoczi
# but WITHOUT ANY WARRANTY; without even the implied warranty of
17 d551cd50 Stefan Hajnoczi
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 d551cd50 Stefan Hajnoczi
# GNU General Public License for more details.
19 d551cd50 Stefan Hajnoczi
#
20 d551cd50 Stefan Hajnoczi
# You should have received a copy of the GNU General Public License
21 d551cd50 Stefan Hajnoczi
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
22 d551cd50 Stefan Hajnoczi
#
23 d551cd50 Stefan Hajnoczi
24 d551cd50 Stefan Hajnoczi
# creator
25 d551cd50 Stefan Hajnoczi
owner=stefanha@linux.vnet.ibm.com
26 d551cd50 Stefan Hajnoczi
27 d551cd50 Stefan Hajnoczi
seq=`basename $0`
28 d551cd50 Stefan Hajnoczi
echo "QA output created by $seq"
29 d551cd50 Stefan Hajnoczi
30 d551cd50 Stefan Hajnoczi
here=`pwd`
31 d551cd50 Stefan Hajnoczi
tmp=/tmp/$$
32 d551cd50 Stefan Hajnoczi
status=1	# failure is the default!
33 d551cd50 Stefan Hajnoczi
34 d551cd50 Stefan Hajnoczi
_cleanup()
35 d551cd50 Stefan Hajnoczi
{
36 d551cd50 Stefan Hajnoczi
	_cleanup_test_img
37 d551cd50 Stefan Hajnoczi
}
38 d551cd50 Stefan Hajnoczi
trap "_cleanup; exit \$status" 0 1 2 3 15
39 d551cd50 Stefan Hajnoczi
40 d551cd50 Stefan Hajnoczi
# get standard environment, filters and checks
41 d551cd50 Stefan Hajnoczi
. ./common.rc
42 d551cd50 Stefan Hajnoczi
. ./common.filter
43 d551cd50 Stefan Hajnoczi
. ./common.pattern
44 d551cd50 Stefan Hajnoczi
45 d551cd50 Stefan Hajnoczi
# This tests qcow2-specific low-level functionality
46 d551cd50 Stefan Hajnoczi
_supported_fmt qcow2
47 d551cd50 Stefan Hajnoczi
_supported_proto generic
48 d551cd50 Stefan Hajnoczi
_supported_os Linux
49 d551cd50 Stefan Hajnoczi
50 d551cd50 Stefan Hajnoczi
# Only qcow2v3 and later supports feature bits
51 d551cd50 Stefan Hajnoczi
IMGOPTS="compat=1.1"
52 d551cd50 Stefan Hajnoczi
53 d551cd50 Stefan Hajnoczi
echo === Create image with unknown autoclear feature bit ===
54 d551cd50 Stefan Hajnoczi
echo
55 d551cd50 Stefan Hajnoczi
_make_test_img 64M
56 d551cd50 Stefan Hajnoczi
./qcow2.py $TEST_IMG set-feature-bit autoclear 63
57 d551cd50 Stefan Hajnoczi
./qcow2.py $TEST_IMG dump-header
58 d551cd50 Stefan Hajnoczi
59 d551cd50 Stefan Hajnoczi
echo
60 d551cd50 Stefan Hajnoczi
echo === Repair image ===
61 d551cd50 Stefan Hajnoczi
echo
62 d551cd50 Stefan Hajnoczi
$QEMU_IMG check -r all $TEST_IMG
63 d551cd50 Stefan Hajnoczi
./qcow2.py $TEST_IMG dump-header
64 d551cd50 Stefan Hajnoczi
65 d551cd50 Stefan Hajnoczi
# success, all done
66 d551cd50 Stefan Hajnoczi
echo "*** done"
67 d551cd50 Stefan Hajnoczi
rm -f $seq.full
68 d551cd50 Stefan Hajnoczi
status=0