e8c212d682
Blue Swirl notices that we were using the old FSF post address in the license boilerplates. Replace both the old and new address with links to the gnu.org licenses homepage as suggested by Ben Pfaff. Signed-off-by: Christoph Hellwig <hch@lst.de>
97 lines
2.1 KiB
Bash
Executable file
97 lines
2.1 KiB
Bash
Executable file
#!/bin/sh
|
|
#
|
|
# qcow2 pattern test, empty and compressed image
|
|
#
|
|
# Copyright (C) 2009 Red Hat, Inc.
|
|
#
|
|
# 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=kwolf@redhat.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
|
|
|
|
# much of this could be generic for any format supporting compression.
|
|
_supported_fmt qcow qcow2
|
|
_supported_os Linux
|
|
|
|
TEST_OFFSETS="0 4294967296"
|
|
TEST_OPS="writev read write readv"
|
|
|
|
_make_test_img 6G
|
|
|
|
echo "Testing empty image"
|
|
echo
|
|
|
|
for offset in $TEST_OFFSETS; do
|
|
echo "At offset $offset:"
|
|
for op in $TEST_OPS; do
|
|
io_test $op $offset
|
|
done
|
|
_check_test_img
|
|
done
|
|
|
|
|
|
echo "Compressing image"
|
|
echo
|
|
|
|
mv $TEST_IMG $TEST_IMG.orig
|
|
$QEMU_IMG convert -f $IMGFMT -O $IMGFMT -c $TEST_IMG.orig $TEST_IMG
|
|
|
|
echo "Testing compressed image"
|
|
echo
|
|
|
|
for offset in $TEST_OFFSETS; do
|
|
echo "With offset $offset:"
|
|
for op in read readv; do
|
|
io_test $op $offset
|
|
done
|
|
_check_test_img
|
|
done
|
|
|
|
echo "Testing compressed image with odd offsets"
|
|
echo
|
|
for offset in $TEST_OFFSETS; do
|
|
# Some odd offset (1 sector), so tests will write to areas occupied partly
|
|
# by old (compressed) data and empty clusters
|
|
offset=$((offset + 512))
|
|
echo "With offset $offset:"
|
|
for op in $TEST_OPS; do
|
|
io_test $op $offset
|
|
done
|
|
_check_test_img
|
|
done
|
|
|
|
# success, all done
|
|
echo "*** done"
|
|
rm -f $seq.full
|
|
status=0
|