mirror of https://github.com/xemu-project/xemu.git
iotests: Disable data_file where it cannot be used
Signed-off-by: Max Reitz <mreitz@redhat.com> Message-id: 20191107163708.833192-22-mreitz@redhat.com [mreitz: Also disable 273] Signed-off-by: Max Reitz <mreitz@redhat.com>
This commit is contained in:
parent
39d2c7dc8f
commit
3be2024aef
|
@ -41,8 +41,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto generic
|
_supported_proto generic
|
||||||
# refcount_bits must be at least 4 so we can create ten internal snapshots
|
# refcount_bits must be at least 4 so we can create ten internal snapshots
|
||||||
# (1 bit supports none, 2 bits support two, 4 bits support 14)
|
# (1 bit supports none, 2 bits support two, 4 bits support 14);
|
||||||
_unsupported_imgopts 'refcount_bits=\(1\|2\)[^0-9]'
|
# snapshot are generally impossible with external data files
|
||||||
|
_unsupported_imgopts 'refcount_bits=\(1\|2\)[^0-9]' data_file
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo "creating image"
|
echo "creating image"
|
||||||
|
|
|
@ -43,6 +43,8 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
_supported_os Linux
|
_supported_os Linux
|
||||||
|
# Compression and snapshots do not work with external data files
|
||||||
|
_unsupported_imgopts data_file
|
||||||
|
|
||||||
TEST_OFFSETS="0 4294967296"
|
TEST_OFFSETS="0 4294967296"
|
||||||
TEST_OPS="writev read write readv"
|
TEST_OPS="writev read write readv"
|
||||||
|
|
|
@ -40,8 +40,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
# actually any format that supports snapshots
|
# actually any format that supports snapshots
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto generic
|
_supported_proto generic
|
||||||
# Internal snapshots are (currently) impossible with refcount_bits=1
|
# Internal snapshots are (currently) impossible with refcount_bits=1,
|
||||||
_unsupported_imgopts 'refcount_bits=1[^0-9]'
|
# and generally impossible with external data files
|
||||||
|
_unsupported_imgopts 'refcount_bits=1[^0-9]' data_file
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo "creating image"
|
echo "creating image"
|
||||||
|
|
|
@ -49,7 +49,10 @@ _supported_cache_modes writethrough none
|
||||||
# 32 and 64 bits do not work either, however, due to different leaked cluster
|
# 32 and 64 bits do not work either, however, due to different leaked cluster
|
||||||
# count on error.
|
# count on error.
|
||||||
# Thus, the only remaining option is refcount_bits=16.
|
# Thus, the only remaining option is refcount_bits=16.
|
||||||
_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)'
|
#
|
||||||
|
# As for data_file, none of the refcount tests can work for it.
|
||||||
|
_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)' \
|
||||||
|
data_file
|
||||||
|
|
||||||
echo "Errors while writing 128 kB"
|
echo "Errors while writing 128 kB"
|
||||||
echo
|
echo
|
||||||
|
|
|
@ -42,8 +42,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto generic
|
_supported_proto generic
|
||||||
_unsupported_proto vxhs
|
_unsupported_proto vxhs
|
||||||
# Internal snapshots are (currently) impossible with refcount_bits=1
|
# Internal snapshots are (currently) impossible with refcount_bits=1,
|
||||||
_unsupported_imgopts 'refcount_bits=1[^0-9]'
|
# and generally impossible with external data files
|
||||||
|
_unsupported_imgopts 'refcount_bits=1[^0-9]' data_file
|
||||||
|
|
||||||
offset_size=24
|
offset_size=24
|
||||||
offset_l1_size=36
|
offset_l1_size=36
|
||||||
|
|
|
@ -40,9 +40,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
# This tests qcow2-specific low-level functionality
|
# This tests qcow2-specific low-level functionality
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
# We want to test compat=0.10, which does not support refcount widths
|
# We want to test compat=0.10, which does not support external data
|
||||||
# other than 16
|
# files or refcount widths other than 16
|
||||||
_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)'
|
_unsupported_imgopts data_file 'refcount_bits=\([^1]\|.\([^6]\|$\)\)'
|
||||||
|
|
||||||
CLUSTER_SIZE=65536
|
CLUSTER_SIZE=65536
|
||||||
|
|
||||||
|
|
|
@ -43,8 +43,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
# This tests qcow2-specific low-level functionality
|
# This tests qcow2-specific low-level functionality
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
# Only qcow2v3 and later supports feature bits
|
# Only qcow2v3 and later supports feature bits;
|
||||||
_unsupported_imgopts 'compat=0.10'
|
# qcow2.py does not support external data files
|
||||||
|
_unsupported_imgopts 'compat=0.10' data_file
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo === Image with unknown incompatible feature bit ===
|
echo === Image with unknown incompatible feature bit ===
|
||||||
|
|
|
@ -44,6 +44,9 @@ _supported_proto file
|
||||||
_supported_os Linux
|
_supported_os Linux
|
||||||
_default_cache_mode writethrough
|
_default_cache_mode writethrough
|
||||||
_supported_cache_modes writethrough
|
_supported_cache_modes writethrough
|
||||||
|
# Some of these test cases expect no external data file so that all
|
||||||
|
# clusters are part of the qcow2 image and refcounted
|
||||||
|
_unsupported_imgopts data_file
|
||||||
|
|
||||||
size=128M
|
size=128M
|
||||||
|
|
||||||
|
|
|
@ -38,6 +38,8 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
|
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
|
# data_file does not support compressed clusters
|
||||||
|
_unsupported_imgopts data_file
|
||||||
|
|
||||||
CLUSTER_SIZE=64k
|
CLUSTER_SIZE=64k
|
||||||
size=128M
|
size=128M
|
||||||
|
|
|
@ -49,6 +49,8 @@ _compare()
|
||||||
_supported_fmt raw qcow2 qed luks
|
_supported_fmt raw qcow2 qed luks
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
_supported_os Linux
|
_supported_os Linux
|
||||||
|
# Using 'cp' is incompatible with external data files
|
||||||
|
_unsupported_imgopts data_file
|
||||||
|
|
||||||
# Remove once all tests are fixed to use TEST_IMG_FILE
|
# Remove once all tests are fixed to use TEST_IMG_FILE
|
||||||
# correctly and common.rc sets it unconditionally
|
# correctly and common.rc sets it unconditionally
|
||||||
|
|
|
@ -39,8 +39,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
# A compat=0.10 image is created in this test which does not support anything
|
# A compat=0.10 image is created in this test which does not support anything
|
||||||
# other than refcount_bits=16
|
# other than refcount_bits=16;
|
||||||
_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)'
|
# it also will not support an external data file
|
||||||
|
_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)' data_file
|
||||||
_require_drivers nbd
|
_require_drivers nbd
|
||||||
|
|
||||||
do_run_qemu()
|
do_run_qemu()
|
||||||
|
|
|
@ -56,8 +56,9 @@ _supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
_supported_os Linux
|
_supported_os Linux
|
||||||
_require_command QEMU_NBD
|
_require_command QEMU_NBD
|
||||||
# Internal snapshots are (currently) impossible with refcount_bits=1
|
# Internal snapshots are (currently) impossible with refcount_bits=1,
|
||||||
_unsupported_imgopts 'refcount_bits=1[^0-9]'
|
# and generally impossible with external data files
|
||||||
|
_unsupported_imgopts 'refcount_bits=1[^0-9]' data_file
|
||||||
|
|
||||||
nbd_snapshot_img="nbd:unix:$nbd_unix_socket"
|
nbd_snapshot_img="nbd:unix:$nbd_unix_socket"
|
||||||
|
|
||||||
|
|
|
@ -48,8 +48,10 @@ _filter_io_error()
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
_supported_os Linux
|
_supported_os Linux
|
||||||
# These tests only work for compat=1.1 images with refcount_bits=16
|
# These tests only work for compat=1.1 images without an external
|
||||||
_unsupported_imgopts 'compat=0.10' 'refcount_bits=\([^1]\|.\([^6]\|$\)\)'
|
# data file with refcount_bits=16
|
||||||
|
_unsupported_imgopts 'compat=0.10' data_file \
|
||||||
|
'refcount_bits=\([^1]\|.\([^6]\|$\)\)'
|
||||||
|
|
||||||
# The repair process will create a large file - so check for availability first
|
# The repair process will create a large file - so check for availability first
|
||||||
_require_large_file 64G
|
_require_large_file 64G
|
||||||
|
|
|
@ -42,8 +42,10 @@ _supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
_supported_os Linux
|
_supported_os Linux
|
||||||
# Conversion between different compat versions can only really work
|
# Conversion between different compat versions can only really work
|
||||||
# with refcount_bits=16
|
# with refcount_bits=16;
|
||||||
_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)'
|
# we have explicit tests for data_file here, but the whole test does
|
||||||
|
# not work with it
|
||||||
|
_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)' data_file
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo "=== Testing version downgrade with zero expansion ==="
|
echo "=== Testing version downgrade with zero expansion ==="
|
||||||
|
|
|
@ -41,7 +41,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto generic
|
_supported_proto generic
|
||||||
# We need zero clusters and snapshots
|
# We need zero clusters and snapshots
|
||||||
_unsupported_imgopts 'compat=0.10' 'refcount_bits=1[^0-9]'
|
_unsupported_imgopts 'compat=0.10' 'refcount_bits=1[^0-9]' data_file
|
||||||
|
|
||||||
IMG_SIZE=64M
|
IMG_SIZE=64M
|
||||||
|
|
||||||
|
|
|
@ -40,7 +40,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto generic
|
_supported_proto generic
|
||||||
# We need zero clusters and snapshots
|
# We need zero clusters and snapshots
|
||||||
_unsupported_imgopts 'compat=0.10' 'refcount_bits=1[^0-9]'
|
# (TODO: Consider splitting the snapshot part into a separate test
|
||||||
|
# file, so this one runs with refcount_bits=1 and data_file)
|
||||||
|
_unsupported_imgopts 'compat=0.10' 'refcount_bits=1[^0-9]' data_file
|
||||||
|
|
||||||
# Intentionally create an unaligned image
|
# Intentionally create an unaligned image
|
||||||
IMG_SIZE=$((64 * 1024 * 1024 + 512))
|
IMG_SIZE=$((64 * 1024 * 1024 + 512))
|
||||||
|
|
|
@ -32,8 +32,10 @@ status=1 # failure is the default!
|
||||||
|
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
# Because anything other than 16 would change the output of query-block
|
# Because anything other than 16 would change the output of query-block,
|
||||||
_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)'
|
# and external data files would change the output of
|
||||||
|
# query-named-block-nodes
|
||||||
|
_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)' data_file
|
||||||
|
|
||||||
do_run_qemu()
|
do_run_qemu()
|
||||||
{
|
{
|
||||||
|
|
|
@ -39,8 +39,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
# This tests qcow2-specific low-level functionality
|
# This tests qcow2-specific low-level functionality
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto generic
|
_supported_proto generic
|
||||||
# Internal snapshots are (currently) impossible with refcount_bits=1
|
# Internal snapshots are (currently) impossible with refcount_bits=1,
|
||||||
_unsupported_imgopts 'compat=0.10' 'refcount_bits=1[^0-9]'
|
# and generally impossible with external data files
|
||||||
|
_unsupported_imgopts 'compat=0.10' 'refcount_bits=1[^0-9]' data_file
|
||||||
|
|
||||||
IMG_SIZE=128K
|
IMG_SIZE=128K
|
||||||
|
|
||||||
|
|
|
@ -39,6 +39,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
_require_drivers blkdebug blkverify
|
_require_drivers blkdebug blkverify
|
||||||
|
# blkdebug can only inject errors on bs->file, not on the data_file,
|
||||||
|
# so thie test does not work with external data files
|
||||||
|
_unsupported_imgopts data_file
|
||||||
|
|
||||||
do_run_qemu()
|
do_run_qemu()
|
||||||
{
|
{
|
||||||
|
|
|
@ -39,6 +39,10 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto generic
|
_supported_proto generic
|
||||||
_unsupported_proto vxhs
|
_unsupported_proto vxhs
|
||||||
|
# External data files do not support compressed clusters
|
||||||
|
# (TODO: Consider writing a version for external data files that does
|
||||||
|
# not test compressed clusters)
|
||||||
|
_unsupported_imgopts data_file
|
||||||
|
|
||||||
CLUSTER_SIZE=64k
|
CLUSTER_SIZE=64k
|
||||||
size=128M
|
size=128M
|
||||||
|
|
|
@ -50,6 +50,8 @@ _compare()
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
_supported_os Linux
|
_supported_os Linux
|
||||||
|
# blkdebug can only inject errors on bs->file
|
||||||
|
_unsupported_imgopts data_file
|
||||||
|
|
||||||
# Setup test basic parameters
|
# Setup test basic parameters
|
||||||
TEST_IMG2=$TEST_IMG.2
|
TEST_IMG2=$TEST_IMG.2
|
||||||
|
|
|
@ -40,9 +40,10 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
_supported_os Linux
|
_supported_os Linux
|
||||||
# - Internal snapshots are (currently) impossible with refcount_bits=1
|
# - Internal snapshots are (currently) impossible with refcount_bits=1,
|
||||||
|
# and generally impossible with external data files
|
||||||
# - This is generally a test for compat=1.1 images
|
# - This is generally a test for compat=1.1 images
|
||||||
_unsupported_imgopts 'refcount_bits=1[^0-9]' 'compat=0.10'
|
_unsupported_imgopts 'refcount_bits=1[^0-9]' data_file 'compat=0.10'
|
||||||
|
|
||||||
header_size=104
|
header_size=104
|
||||||
|
|
||||||
|
|
|
@ -38,6 +38,8 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
|
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file nfs
|
_supported_proto file nfs
|
||||||
|
# External data files do not support compressed clusters
|
||||||
|
_unsupported_imgopts data_file
|
||||||
|
|
||||||
IMG_SIZE=128K
|
IMG_SIZE=128K
|
||||||
|
|
||||||
|
|
|
@ -40,8 +40,10 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
|
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
# The code path we want to test here only works for compat=1.1 images
|
# The code path we want to test here only works for compat=1.1 images;
|
||||||
_unsupported_imgopts 'compat=0.10'
|
# blkdebug can only inject errors on bs->file, so external data files
|
||||||
|
# do not work with this test
|
||||||
|
_unsupported_imgopts 'compat=0.10' data_file
|
||||||
|
|
||||||
for event in l1_update empty_image_prepare reftable_update refblock_alloc; do
|
for event in l1_update empty_image_prepare reftable_update refblock_alloc; do
|
||||||
|
|
||||||
|
|
|
@ -46,8 +46,9 @@ _supported_fmt qcow qcow2 qed vdi vhdx vmdk vpc
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
_supported_os Linux
|
_supported_os Linux
|
||||||
_require_drivers blkdebug blkverify
|
_require_drivers blkdebug blkverify
|
||||||
|
# data_file would change the json:{} filenames
|
||||||
_unsupported_imgopts "subformat=monolithicFlat" "subformat=twoGbMaxExtentFlat" \
|
_unsupported_imgopts "subformat=monolithicFlat" "subformat=twoGbMaxExtentFlat" \
|
||||||
"subformat=twoGbMaxExtentSparse"
|
"subformat=twoGbMaxExtentSparse" data_file
|
||||||
|
|
||||||
do_run_qemu()
|
do_run_qemu()
|
||||||
{
|
{
|
||||||
|
|
|
@ -38,8 +38,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
|
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file nfs
|
_supported_proto file nfs
|
||||||
# Internal snapshots are (currently) impossible with refcount_bits=1
|
# Internal snapshots are (currently) impossible with refcount_bits=1,
|
||||||
_unsupported_imgopts 'refcount_bits=1[^0-9]'
|
# and generally impossible with external data files
|
||||||
|
_unsupported_imgopts 'refcount_bits=1[^0-9]' data_file
|
||||||
|
|
||||||
IMG_SIZE=64K
|
IMG_SIZE=64K
|
||||||
|
|
||||||
|
|
|
@ -41,8 +41,10 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
_supported_os Linux
|
_supported_os Linux
|
||||||
# This test directly modifies a refblock so it relies on refcount_bits being 16
|
# This test directly modifies a refblock so it relies on refcount_bits being 16;
|
||||||
_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)'
|
# and the low-level modification it performs are not tuned for external data
|
||||||
|
# files
|
||||||
|
_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)' data_file
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo '=== Repairing an image without any refcount table ==='
|
echo '=== Repairing an image without any refcount table ==='
|
||||||
|
|
|
@ -40,8 +40,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
# This test will set refcount_bits on its own which would conflict with the
|
# This test will set refcount_bits on its own which would conflict with the
|
||||||
# manual setting; compat will be overridden as well
|
# manual setting; compat will be overridden as well;
|
||||||
_unsupported_imgopts refcount_bits 'compat=0.10'
|
# and external data files do not work well with our refcount testing
|
||||||
|
_unsupported_imgopts refcount_bits 'compat=0.10' data_file
|
||||||
|
|
||||||
print_refcount_bits()
|
print_refcount_bits()
|
||||||
{
|
{
|
||||||
|
|
|
@ -39,6 +39,8 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto generic
|
_supported_proto generic
|
||||||
_unsupported_proto vxhs
|
_unsupported_proto vxhs
|
||||||
|
# qcow2.py does not work too well with external data files
|
||||||
|
_unsupported_imgopts data_file
|
||||||
|
|
||||||
|
|
||||||
TEST_IMG="$TEST_IMG.base" _make_test_img 64M
|
TEST_IMG="$TEST_IMG.base" _make_test_img 64M
|
||||||
|
|
|
@ -39,6 +39,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
_supported_os Linux
|
_supported_os Linux
|
||||||
|
# Refcount structures are used much differently with external data
|
||||||
|
# files
|
||||||
|
_unsupported_imgopts data_file
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo '=== New refcount structures may not conflict with existing structures ==='
|
echo '=== New refcount structures may not conflict with existing structures ==='
|
||||||
|
|
|
@ -40,6 +40,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
_supported_os Linux
|
_supported_os Linux
|
||||||
|
# With an external data file, data clusters are not refcounted
|
||||||
|
# (and so qemu-img check does not check their refcount)
|
||||||
|
_unsupported_imgopts data_file
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo '=== Check on an image with a multiple of 2^32 clusters ==='
|
echo '=== Check on an image with a multiple of 2^32 clusters ==='
|
||||||
|
|
|
@ -51,6 +51,8 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2 qed
|
_supported_fmt qcow2 qed
|
||||||
_supported_proto generic
|
_supported_proto generic
|
||||||
_unsupported_proto vxhs
|
_unsupported_proto vxhs
|
||||||
|
# Copying files around with cp does not work with external data files
|
||||||
|
_unsupported_imgopts data_file
|
||||||
|
|
||||||
# Create source disk
|
# Create source disk
|
||||||
TEST_IMG="$TEST_IMG.backing" _make_test_img 1M
|
TEST_IMG="$TEST_IMG.backing" _make_test_img 1M
|
||||||
|
|
|
@ -47,8 +47,11 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
_supported_os Linux
|
_supported_os Linux
|
||||||
# Persistent dirty bitmaps require compat=1.1
|
# Persistent dirty bitmaps require compat=1.1;
|
||||||
_unsupported_imgopts 'compat=0.10'
|
# Internal snapshots forbid using an external data file
|
||||||
|
# (they work with refcount_bits=1 here, though, because there actually
|
||||||
|
# is no data when creating the snapshot)
|
||||||
|
_unsupported_imgopts 'compat=0.10' data_file
|
||||||
|
|
||||||
run_qemu()
|
run_qemu()
|
||||||
{
|
{
|
||||||
|
|
|
@ -43,6 +43,8 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
|
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
|
# An external data file would change the query-named-block-nodes output
|
||||||
|
_unsupported_imgopts data_file
|
||||||
|
|
||||||
size=64M
|
size=64M
|
||||||
|
|
||||||
|
|
|
@ -43,9 +43,9 @@ _supported_fmt qcow2
|
||||||
_supported_proto generic
|
_supported_proto generic
|
||||||
_supported_os Linux
|
_supported_os Linux
|
||||||
|
|
||||||
# Internal snapshots are (currently) impossible with refcount_bits=1
|
# Internal snapshots are (currently) impossible with refcount_bits=1,
|
||||||
# This was taken from test 080
|
# and generally impossible with external data files
|
||||||
_unsupported_imgopts 'refcount_bits=1[^0-9]'
|
_unsupported_imgopts 'refcount_bits=1[^0-9]' data_file
|
||||||
|
|
||||||
size=64M
|
size=64M
|
||||||
_make_test_img $size
|
_make_test_img $size
|
||||||
|
|
|
@ -39,7 +39,8 @@ _supported_proto file
|
||||||
|
|
||||||
# Repairing the corrupted image requires qemu-img check to store a
|
# Repairing the corrupted image requires qemu-img check to store a
|
||||||
# refcount up to 3, which requires at least two refcount bits.
|
# refcount up to 3, which requires at least two refcount bits.
|
||||||
_unsupported_imgopts 'refcount_bits=1[^0-9]'
|
# External data files do not support compressed clusters.
|
||||||
|
_unsupported_imgopts 'refcount_bits=1[^0-9]' data_file
|
||||||
|
|
||||||
|
|
||||||
echo
|
echo
|
||||||
|
|
|
@ -40,7 +40,8 @@ _supported_proto file
|
||||||
|
|
||||||
# This test needs clusters with at least a refcount of 2 so that
|
# This test needs clusters with at least a refcount of 2 so that
|
||||||
# OFLAG_COPIED is not set. refcount_bits=1 is therefore unsupported.
|
# OFLAG_COPIED is not set. refcount_bits=1 is therefore unsupported.
|
||||||
_unsupported_imgopts 'refcount_bits=1[^0-9]'
|
# (As are external data files.)
|
||||||
|
_unsupported_imgopts 'refcount_bits=1[^0-9]' data_file
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo '=== Simulating an I/O error during snapshot deletion ==='
|
echo '=== Simulating an I/O error during snapshot deletion ==='
|
||||||
|
|
|
@ -37,8 +37,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
_supported_os Linux
|
_supported_os Linux
|
||||||
# To use a different refcount width but 16 bits we need compat=1.1
|
# To use a different refcount width but 16 bits we need compat=1.1,
|
||||||
_unsupported_imgopts 'compat=0.10'
|
# and external data files do not support compressed clusters.
|
||||||
|
_unsupported_imgopts 'compat=0.10' data_file
|
||||||
|
|
||||||
echo "== Creating huge file =="
|
echo "== Creating huge file =="
|
||||||
|
|
||||||
|
|
|
@ -40,8 +40,10 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
_supported_os Linux
|
_supported_os Linux
|
||||||
# External data files do not work with compat=0.10
|
# External data files do not work with compat=0.10, and because there
|
||||||
_unsupported_imgopts 'compat=0.10'
|
# is an explicit case for external data files here, we cannot allow
|
||||||
|
# the user to specify whether to use one
|
||||||
|
_unsupported_imgopts 'compat=0.10' data_file
|
||||||
|
|
||||||
for mode in off metadata falloc full; do
|
for mode in off metadata falloc full; do
|
||||||
|
|
||||||
|
|
|
@ -41,8 +41,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
_supported_os Linux
|
_supported_os Linux
|
||||||
# External data files do not work with compat=0.10
|
# External data files do not work with compat=0.10, and because we use
|
||||||
_unsupported_imgopts 'compat=0.10'
|
# our own external data file, we cannot let the user specify one
|
||||||
|
_unsupported_imgopts 'compat=0.10' data_file
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo "=== Create and open image with external data file ==="
|
echo "=== Create and open image with external data file ==="
|
||||||
|
|
|
@ -39,6 +39,8 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
_supported_os Linux
|
_supported_os Linux
|
||||||
|
# This test does not make much sense with external data files
|
||||||
|
_unsupported_imgopts data_file
|
||||||
|
|
||||||
# This test checks that qcow2_process_discards does not truncate a discard
|
# This test checks that qcow2_process_discards does not truncate a discard
|
||||||
# request > 2G.
|
# request > 2G.
|
||||||
|
|
|
@ -47,7 +47,8 @@ _supported_os Linux
|
||||||
# (1) We create a v2 image that supports nothing but refcount_bits=16
|
# (1) We create a v2 image that supports nothing but refcount_bits=16
|
||||||
# (2) We do some refcount management on our own which expects
|
# (2) We do some refcount management on our own which expects
|
||||||
# refcount_bits=16
|
# refcount_bits=16
|
||||||
_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)'
|
# As for data files, they do not support snapshots at all.
|
||||||
|
_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)' data_file
|
||||||
|
|
||||||
# Parameters:
|
# Parameters:
|
||||||
# $1: image filename
|
# $1: image filename
|
||||||
|
|
|
@ -42,8 +42,9 @@ _supported_proto file
|
||||||
_supported_os Linux
|
_supported_os Linux
|
||||||
_require_drivers copy-on-read
|
_require_drivers copy-on-read
|
||||||
|
|
||||||
# Internal snapshots are (currently) impossible with refcount_bits=1
|
# Internal snapshots are (currently) impossible with refcount_bits=1,
|
||||||
_unsupported_imgopts 'refcount_bits=1[^0-9]'
|
# and generally impossible with external data files
|
||||||
|
_unsupported_imgopts 'refcount_bits=1[^0-9]' data_file
|
||||||
|
|
||||||
do_run_qemu()
|
do_run_qemu()
|
||||||
{
|
{
|
||||||
|
|
|
@ -37,6 +37,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
|
||||||
_supported_fmt qcow2
|
_supported_fmt qcow2
|
||||||
_supported_proto file
|
_supported_proto file
|
||||||
_supported_os Linux
|
_supported_os Linux
|
||||||
|
# External data files would add nodes to the block graph, so it would
|
||||||
|
# not match the reference output
|
||||||
|
_unsupported_imgopts data_file
|
||||||
|
|
||||||
do_run_qemu()
|
do_run_qemu()
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue