]> git.proxmox.com Git - mirror_qemu.git/commitdiff
iotests: Disable data_file where it cannot be used
authorMax Reitz <mreitz@redhat.com>
Thu, 7 Nov 2019 16:37:07 +0000 (17:37 +0100)
committerMax Reitz <mreitz@redhat.com>
Mon, 6 Jan 2020 12:43:07 +0000 (13:43 +0100)
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>
44 files changed:
tests/qemu-iotests/007
tests/qemu-iotests/014
tests/qemu-iotests/015
tests/qemu-iotests/026
tests/qemu-iotests/029
tests/qemu-iotests/031
tests/qemu-iotests/036
tests/qemu-iotests/039
tests/qemu-iotests/046
tests/qemu-iotests/048
tests/qemu-iotests/051
tests/qemu-iotests/058
tests/qemu-iotests/060
tests/qemu-iotests/061
tests/qemu-iotests/062
tests/qemu-iotests/066
tests/qemu-iotests/067
tests/qemu-iotests/068
tests/qemu-iotests/071
tests/qemu-iotests/073
tests/qemu-iotests/074
tests/qemu-iotests/080
tests/qemu-iotests/090
tests/qemu-iotests/098
tests/qemu-iotests/099
tests/qemu-iotests/103
tests/qemu-iotests/108
tests/qemu-iotests/112
tests/qemu-iotests/114
tests/qemu-iotests/121
tests/qemu-iotests/138
tests/qemu-iotests/156
tests/qemu-iotests/176
tests/qemu-iotests/191
tests/qemu-iotests/201
tests/qemu-iotests/214
tests/qemu-iotests/217
tests/qemu-iotests/220
tests/qemu-iotests/243
tests/qemu-iotests/244
tests/qemu-iotests/250
tests/qemu-iotests/261
tests/qemu-iotests/267
tests/qemu-iotests/273

index 7d3544b47928a6269b7e277629e6fc8c0e96766a..160683adf8586418101c9cfe62fb702a736490a4 100755 (executable)
@@ -41,8 +41,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto generic
 # 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)
-_unsupported_imgopts 'refcount_bits=\(1\|2\)[^0-9]'
+# (1 bit supports none, 2 bits support two, 4 bits support 14);
+# snapshot are generally impossible with external data files
+_unsupported_imgopts 'refcount_bits=\(1\|2\)[^0-9]' data_file
 
 echo
 echo "creating image"
index 2f728a1956c7ffd1a7254f6d66eba326f288cf10..e1221c0fff771649a2397bb761c3c425937c2b65 100755 (executable)
@@ -43,6 +43,8 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto file
 _supported_os Linux
+# Compression and snapshots do not work with external data files
+_unsupported_imgopts data_file
 
 TEST_OFFSETS="0 4294967296"
 TEST_OPS="writev read write readv"
index eec5387f3d72c831e8c57c252c1e47ceb5b878d1..4d8effd0ae62e1045b48018197a454b91478fec6 100755 (executable)
@@ -40,8 +40,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 # actually any format that supports snapshots
 _supported_fmt qcow2
 _supported_proto generic
-# Internal snapshots are (currently) impossible with refcount_bits=1
-_unsupported_imgopts 'refcount_bits=1[^0-9]'
+# Internal snapshots are (currently) impossible with refcount_bits=1,
+# and generally impossible with external data files
+_unsupported_imgopts 'refcount_bits=1[^0-9]' data_file
 
 echo
 echo "creating image"
index 3430029ed69f40dd9877f6c6dd606f201fea5b0c..a4aa74764f8c21da65085bf278eb81a7152fd22a 100755 (executable)
@@ -49,7 +49,10 @@ _supported_cache_modes writethrough none
 # 32 and 64 bits do not work either, however, due to different leaked cluster
 # count on error.
 # 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
index 9254ede5e534c316cfe9594633380fa5e9278073..2161a4b87a52333f9711690ec9755d9ea8a7b4c0 100755 (executable)
@@ -42,8 +42,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto generic
 _unsupported_proto vxhs
-# Internal snapshots are (currently) impossible with refcount_bits=1
-_unsupported_imgopts 'refcount_bits=1[^0-9]'
+# Internal snapshots are (currently) impossible with refcount_bits=1,
+# and generally impossible with external data files
+_unsupported_imgopts 'refcount_bits=1[^0-9]' data_file
 
 offset_size=24
 offset_l1_size=36
index c44fcf91bb3df6e8293a9054d840e634398a47b0..646ecd593f0c00d003a6b8836feab18b3138e50d 100755 (executable)
@@ -40,9 +40,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 # This tests qcow2-specific low-level functionality
 _supported_fmt qcow2
 _supported_proto file
-# We want to test compat=0.10, which does not support refcount widths
-# other than 16
-_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)'
+# We want to test compat=0.10, which does not support external data
+# files or refcount widths other than 16
+_unsupported_imgopts data_file 'refcount_bits=\([^1]\|.\([^6]\|$\)\)'
 
 CLUSTER_SIZE=65536
 
index bbaf0ef45b0b8f71e7c458966f1e39d47f9c5737..512598421c203958762b2d35cfc23a2cf5d83484 100755 (executable)
@@ -43,8 +43,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 # This tests qcow2-specific low-level functionality
 _supported_fmt qcow2
 _supported_proto file
-# Only qcow2v3 and later supports feature bits
-_unsupported_imgopts 'compat=0.10'
+# Only qcow2v3 and later supports feature bits;
+# qcow2.py does not support external data files
+_unsupported_imgopts 'compat=0.10' data_file
 
 echo
 echo === Image with unknown incompatible feature bit ===
index 99563bf12631c5a6931a9f3145529e76dfb36392..ddce48ab47522efa363e1bffd7f55fd1263125b4 100755 (executable)
@@ -44,6 +44,9 @@ _supported_proto file
 _supported_os Linux
 _default_cache_mode 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
 
index 4e03ead7b1fb2da6b14cf5ae5aae3d02ccc7dbff..a066eec605984fc1a945d2de3e26297eaf2eb4b6 100755 (executable)
@@ -38,6 +38,8 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 
 _supported_fmt qcow2
 _supported_proto file
+# data_file does not support compressed clusters
+_unsupported_imgopts data_file
 
 CLUSTER_SIZE=64k
 size=128M
index a8feb7618460b854d9a7356c880da50f1c520a8d..2af6b74b41707c058080e7b3ecfbd35b6f89140b 100755 (executable)
@@ -49,6 +49,8 @@ _compare()
 _supported_fmt raw qcow2 qed luks
 _supported_proto file
 _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
 # correctly and common.rc sets it unconditionally
index d7294d80d96f47ac4e449f5f48ba48427c8bb208..034d3a325077b456849ae5d9dd081e088aa398c4 100755 (executable)
@@ -39,8 +39,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto file
 # A compat=0.10 image is created in this test which does not support anything
-# other than refcount_bits=16
-_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)'
+# other than refcount_bits=16;
+# it also will not support an external data file
+_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)' data_file
 _require_drivers nbd
 
 do_run_qemu()
index ed01115fa3df249b80fef7cef6282e823b37c729..d5304bb404da2d73e20f554d30e40fee609094b4 100755 (executable)
@@ -56,8 +56,9 @@ _supported_fmt qcow2
 _supported_proto file
 _supported_os Linux
 _require_command QEMU_NBD
-# Internal snapshots are (currently) impossible with refcount_bits=1
-_unsupported_imgopts 'refcount_bits=1[^0-9]'
+# Internal snapshots are (currently) impossible with refcount_bits=1,
+# and generally impossible with external data files
+_unsupported_imgopts 'refcount_bits=1[^0-9]' data_file
 
 nbd_snapshot_img="nbd:unix:$nbd_unix_socket"
 
index 14117816185aa5a7ead560649fc8a50b125cec8c..043f12904aab0fec85da97b994979fcecd3d719a 100755 (executable)
@@ -48,8 +48,10 @@ _filter_io_error()
 _supported_fmt qcow2
 _supported_proto file
 _supported_os Linux
-# These tests only work for compat=1.1 images with refcount_bits=16
-_unsupported_imgopts 'compat=0.10' 'refcount_bits=\([^1]\|.\([^6]\|$\)\)'
+# These tests only work for compat=1.1 images without an external
+# 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
 _require_large_file 64G
index aad6b72d8a4f9e7ece3b0fcaaea13f7dd0c83a14..36b040491fefd9e194d19671e42698475fc7623e 100755 (executable)
@@ -42,8 +42,10 @@ _supported_fmt qcow2
 _supported_proto file
 _supported_os Linux
 # Conversion between different compat versions can only really work
-# with refcount_bits=16
-_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)'
+# with refcount_bits=16;
+# 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 "=== Testing version downgrade with zero expansion ==="
index 0df8667e5af9e685216236af6ba091ccd7194903..f26b88df9d8610bba9a8a06668e9b5b812f27eb2 100755 (executable)
@@ -41,7 +41,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto generic
 # 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
 
index 71e8df598a53a5ac9afde21f62893ab388cb5a6f..a4ac613f8ecefeccff84699619753ca11b7ab7fa 100755 (executable)
@@ -40,7 +40,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto generic
 # 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
 IMG_SIZE=$((64 * 1024 * 1024 + 512))
index 926c79b37c45703f7140e9d0eabe10bc87dd969f..a63be9cabf78fae09b790f6b30d8a7288a9f5b84 100755 (executable)
@@ -32,8 +32,10 @@ status=1     # failure is the default!
 
 _supported_fmt qcow2
 _supported_proto file
-# Because anything other than 16 would change the output of query-block
-_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)'
+# Because anything other than 16 would change the output of query-block,
+# and external data files would change the output of
+# query-named-block-nodes
+_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)' data_file
 
 do_run_qemu()
 {
index fe9d7ae1be0da8d271ffbc7360819a62498fabaf..ccd1a9f1db79980b8987eacd250ae210873c465c 100755 (executable)
@@ -39,8 +39,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 # This tests qcow2-specific low-level functionality
 _supported_fmt qcow2
 _supported_proto generic
-# Internal snapshots are (currently) impossible with refcount_bits=1
-_unsupported_imgopts 'compat=0.10' 'refcount_bits=1[^0-9]'
+# Internal snapshots are (currently) impossible with refcount_bits=1,
+# and generally impossible with external data files
+_unsupported_imgopts 'compat=0.10' 'refcount_bits=1[^0-9]' data_file
 
 IMG_SIZE=128K
 
index 4e31943244f684920fd3fef9c94ba0b18416bfac..88faebcc1d960aa1616f14064a1bcdeb1819abc4 100755 (executable)
@@ -39,6 +39,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto file
 _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()
 {
index e684b1b780fa0bde36cbb03dca61f695cea5c41a..23a1bdf8905623958f1dd13372d2efc7fefc6720 100755 (executable)
@@ -39,6 +39,10 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto generic
 _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
 size=128M
index 62be89a0d9c8d03cac005bb8ba8b0b4f0c630075..db03edf0b0522d7ef57d412cc6f1ec2ac1ddc392 100755 (executable)
@@ -50,6 +50,8 @@ _compare()
 _supported_fmt qcow2
 _supported_proto file
 _supported_os Linux
+# blkdebug can only inject errors on bs->file
+_unsupported_imgopts data_file
 
 # Setup test basic parameters
 TEST_IMG2=$TEST_IMG.2
index b1ecafb41e646bee4f467ea7d3d5d37075b29795..a3d13c414e9f12229f25193abae7724f22fba1f2 100755 (executable)
@@ -40,9 +40,10 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto file
 _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
-_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
 
index 9f8cfbb80f3f43671018bfa7304dec455833dd2e..1246e4f91076df10d306219e7835ec4ba92d571d 100755 (executable)
@@ -38,6 +38,8 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 
 _supported_fmt qcow2
 _supported_proto file nfs
+# External data files do not support compressed clusters
+_unsupported_imgopts data_file
 
 IMG_SIZE=128K
 
index 700068b328f286b6f64c88adecaff46371975cea..1e29d96b3d7e7088429f5237585da26d25cc3a34 100755 (executable)
@@ -40,8 +40,10 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 
 _supported_fmt qcow2
 _supported_proto file
-# The code path we want to test here only works for compat=1.1 images
-_unsupported_imgopts 'compat=0.10'
+# The code path we want to test here only works for compat=1.1 images;
+# 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
 
index b383c11e6ac7996af26d8c049cfcbd297ec6bebd..65e8e9257200c2951a088def307b55d2e1c0e3d5 100755 (executable)
@@ -46,8 +46,9 @@ _supported_fmt qcow qcow2 qed vdi vhdx vmdk vpc
 _supported_proto file
 _supported_os Linux
 _require_drivers blkdebug blkverify
+# data_file would change the json:{} filenames
 _unsupported_imgopts "subformat=monolithicFlat" "subformat=twoGbMaxExtentFlat" \
-    "subformat=twoGbMaxExtentSparse"
+    "subformat=twoGbMaxExtentSparse" data_file
 
 do_run_qemu()
 {
index 554b9de0547cde6281da9016fb945dece31389bd..8c1ebe0443979fcef28501af7b8905391f6887e8 100755 (executable)
@@ -38,8 +38,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 
 _supported_fmt qcow2
 _supported_proto file nfs
-# Internal snapshots are (currently) impossible with refcount_bits=1
-_unsupported_imgopts 'refcount_bits=1[^0-9]'
+# Internal snapshots are (currently) impossible with refcount_bits=1,
+# and generally impossible with external data files
+_unsupported_imgopts 'refcount_bits=1[^0-9]' data_file
 
 IMG_SIZE=64K
 
index 3324c86b5fd56529abd902ced752ac0135f135c6..5f7076fba4a17c24b623c58f8872982f5dc69a90 100755 (executable)
@@ -41,8 +41,10 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto file
 _supported_os Linux
-# This test directly modifies a refblock so it relies on refcount_bits being 16
-_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)'
+# This test directly modifies a refblock so it relies on refcount_bits being 16;
+# and the low-level modification it performs are not tuned for external data
+# files
+_unsupported_imgopts 'refcount_bits=\([^1]\|.\([^6]\|$\)\)' data_file
 
 echo
 echo '=== Repairing an image without any refcount table ==='
index 685022593909d304f5bfd29ecfe34805e6a7d390..20ff5c224ae3c0a816d46f8ca900518656028d81 100755 (executable)
@@ -40,8 +40,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto file
 # This test will set refcount_bits on its own which would conflict with the
-# manual setting; compat will be overridden as well
-_unsupported_imgopts refcount_bits 'compat=0.10'
+# manual setting; compat will be overridden as well;
+# and external data files do not work well with our refcount testing
+_unsupported_imgopts refcount_bits 'compat=0.10' data_file
 
 print_refcount_bits()
 {
index f90a744fc09e9215f4ebd47a17c75bdc09343698..26104fff6c6720866dc8312f0b1cb817500ad88d 100755 (executable)
@@ -39,6 +39,8 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto generic
 _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
index 10db813d942d798ca62668283fc7aa7cc1ff76c1..90ea0db73705271b3de7c81f42e19268c837a6d2 100755 (executable)
@@ -39,6 +39,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto file
 _supported_os Linux
+# Refcount structures are used much differently with external data
+# files
+_unsupported_imgopts data_file
 
 echo
 echo '=== New refcount structures may not conflict with existing structures ==='
index 26d18ac8b60ad372505264d3a27d07c720f97b4d..54b01046ad440e3e0f86f2d5d8ef803fdfda5ee0 100755 (executable)
@@ -40,6 +40,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto file
 _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 '=== Check on an image with a multiple of 2^32 clusters ==='
index 3f27db71f2bd2543cc1d47406f1cbf446fe8e20d..5559df63a53ef470101a3e885eae7ab5d5eae62c 100755 (executable)
@@ -51,6 +51,8 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2 qed
 _supported_proto generic
 _unsupported_proto vxhs
+# Copying files around with cp does not work with external data files
+_unsupported_imgopts data_file
 
 # Create source disk
 TEST_IMG="$TEST_IMG.backing" _make_test_img 1M
index 50df4c00fa2885762e58a5ca1fc21a66ea439f5d..117c8b695490000ce064055f94cfa2f5cf49553c 100755 (executable)
@@ -47,8 +47,11 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto file
 _supported_os Linux
-# Persistent dirty bitmaps require compat=1.1
-_unsupported_imgopts 'compat=0.10'
+# Persistent dirty bitmaps require compat=1.1;
+# 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()
 {
index 23ab0ce899e0b75ed53aa75ff65803e25af991ad..b05db6814157f0bed29004b0dd8df521c18f0d4f 100755 (executable)
@@ -43,6 +43,8 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 
 _supported_fmt qcow2
 _supported_proto file
+# An external data file would change the query-named-block-nodes output
+_unsupported_imgopts data_file
 
 size=64M
 
index 86fa37e714240d6de0d3e8ecc3244b8057819dc0..133ba9f03e64f20f2beacc89b7e2101e557bcdf1 100755 (executable)
@@ -43,9 +43,9 @@ _supported_fmt qcow2
 _supported_proto generic
 _supported_os Linux
 
-# Internal snapshots are (currently) impossible with refcount_bits=1
-# This was taken from test 080
-_unsupported_imgopts 'refcount_bits=1[^0-9]'
+# Internal snapshots are (currently) impossible with refcount_bits=1,
+# and generally impossible with external data files
+_unsupported_imgopts 'refcount_bits=1[^0-9]' data_file
 
 size=64M
 _make_test_img $size
index 21ec8a2ad839739c4557a50d98655266e3357ce1..0f2e61280af4155f307f8ad7933ef065cd9d079e 100755 (executable)
@@ -39,7 +39,8 @@ _supported_proto file
 
 # Repairing the corrupted image requires qemu-img check to store a
 # 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
index 58a78a6098a96fef6382b2c5da66ecb57e3567d3..d89116ccadd147c0bc845108a5f06ffd7d55c82b 100755 (executable)
@@ -40,7 +40,8 @@ _supported_proto file
 
 # This test needs clusters with at least a refcount of 2 so that
 # 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 '=== Simulating an I/O error during snapshot deletion ==='
index 3f86f24c4d66283171c45591f7d9722a6afa9dc5..a9259b7127fcec8cf282596c3272449aa18f64ce 100755 (executable)
@@ -37,8 +37,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto file
 _supported_os Linux
-# To use a different refcount width but 16 bits we need compat=1.1
-_unsupported_imgopts 'compat=0.10'
+# To use a different refcount width but 16 bits we need compat=1.1,
+# and external data files do not support compressed clusters.
+_unsupported_imgopts 'compat=0.10' data_file
 
 echo "== Creating huge file =="
 
index 3dc3b6a711bf9db2c3f44554ecf4db6201842581..a61852f6d938521ae0c89d9d69ba4830e4d484d5 100755 (executable)
@@ -40,8 +40,10 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto file
 _supported_os Linux
-# External data files do not work with compat=0.10
-_unsupported_imgopts 'compat=0.10'
+# External data files do not work with compat=0.10, and because there
+# 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
 
index 13263292b0a61f1e2d4c114558671f4d0ab74d88..0d1efee6ef166896873a69722de74234da18d4ab 100755 (executable)
@@ -41,8 +41,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto file
 _supported_os Linux
-# External data files do not work with compat=0.10
-_unsupported_imgopts 'compat=0.10'
+# External data files do not work with compat=0.10, and because we use
+# our own external data file, we cannot let the user specify one
+_unsupported_imgopts 'compat=0.10' data_file
 
 echo
 echo "=== Create and open image with external data file ==="
index 670cf19076aac39f1fd910f0c8091c52dccc9a15..9bb6b94d74ff390952c7d70c791b7934ee562dbc 100755 (executable)
@@ -39,6 +39,8 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto file
 _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
 # request > 2G.
index 9f2817251f59e99d834e6ece3840443bf227a2e1..ddcb04f285dfd49d4bab23d173366f91ad19fbce 100755 (executable)
@@ -47,7 +47,8 @@ _supported_os Linux
 # (1) We create a v2 image that supports nothing but refcount_bits=16
 # (2) We do some refcount management on our own which expects
 #     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:
 #   $1: image filename
index bd9a5c5524c8b0698c92195e71fdd3b38cc85017..c296877168610900560f04d3b04aeadf3cf6d191 100755 (executable)
@@ -42,8 +42,9 @@ _supported_proto file
 _supported_os Linux
 _require_drivers copy-on-read
 
-# Internal snapshots are (currently) impossible with refcount_bits=1
-_unsupported_imgopts 'refcount_bits=1[^0-9]'
+# Internal snapshots are (currently) impossible with refcount_bits=1,
+# and generally impossible with external data files
+_unsupported_imgopts 'refcount_bits=1[^0-9]' data_file
 
 do_run_qemu()
 {
index d598c47d9be3b6bafce34bd01e6034204770d17d..00ff79bcf8f8bb81367925518ec69cf5d6c766da 100755 (executable)
@@ -37,6 +37,9 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto file
 _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()
 {