qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] iotests: Fix unsupported_imgopts for refcount_bits


From: Max Reitz
Subject: [PATCH] iotests: Fix unsupported_imgopts for refcount_bits
Date: Tue, 9 Feb 2021 19:27:45 +0100

Many _unsupported_imgopts lines for refcount_bits values use something
like "refcount_bits=1[^0-9]" to forbid everything but "refcount_bits=1"
(e.g. "refcount_bits=16" is allowed).

That does not work when $IMGOPTS does not have any entry past the
refcount_bits option, which now became apparent with the "check" script
rewrite.

Use \b instead of [^0-9] to check for a word boundary, which is what we
really want.

Signed-off-by: Max Reitz <mreitz@redhat.com>
---
Reproducible with:
$ ./check -qcow2 -o refcount_bits=1
(The tests touched here should be skipped)

I don't know whether \b is portable.  I hope it is.
(This is why I CC-ed you, Eric.)

Then again, it appears that nobody ever runs the iotests with
refcount_bits=1 but me, and I do that on Linux.  So even if it isn't
portable, it shouldn't be an issue in practice... O:)
---
 tests/qemu-iotests/007 | 2 +-
 tests/qemu-iotests/015 | 2 +-
 tests/qemu-iotests/029 | 2 +-
 tests/qemu-iotests/058 | 2 +-
 tests/qemu-iotests/062 | 2 +-
 tests/qemu-iotests/066 | 2 +-
 tests/qemu-iotests/068 | 2 +-
 tests/qemu-iotests/080 | 2 +-
 tests/qemu-iotests/103 | 2 +-
 tests/qemu-iotests/201 | 2 +-
 tests/qemu-iotests/214 | 2 +-
 tests/qemu-iotests/217 | 2 +-
 tests/qemu-iotests/267 | 2 +-
 tests/qemu-iotests/271 | 3 ++-
 tests/qemu-iotests/286 | 2 +-
 15 files changed, 16 insertions(+), 15 deletions(-)

diff --git a/tests/qemu-iotests/007 b/tests/qemu-iotests/007
index 936d3f14fb..a014f50a6b 100755
--- a/tests/qemu-iotests/007
+++ b/tests/qemu-iotests/007
@@ -44,7 +44,7 @@ _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);
 # snapshot are generally impossible with external data files
-_unsupported_imgopts 'refcount_bits=\(1\|2\)[^0-9]' data_file
+_unsupported_imgopts 'refcount_bits=\(1\|2\)\b' data_file
 
 echo
 echo "creating image"
diff --git a/tests/qemu-iotests/015 b/tests/qemu-iotests/015
index 40c23235a6..24e28643e4 100755
--- a/tests/qemu-iotests/015
+++ b/tests/qemu-iotests/015
@@ -43,7 +43,7 @@ _supported_fmt qcow2
 _supported_proto generic
 # 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
+_unsupported_imgopts 'refcount_bits=1\b' data_file
 
 echo
 echo "creating image"
diff --git a/tests/qemu-iotests/029 b/tests/qemu-iotests/029
index bd71dd2f22..9b345060e5 100755
--- a/tests/qemu-iotests/029
+++ b/tests/qemu-iotests/029
@@ -44,7 +44,7 @@ _supported_fmt qcow2
 _supported_proto generic
 # 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
+_unsupported_imgopts 'refcount_bits=1\b' data_file
 
 offset_size=24
 offset_l1_size=36
diff --git a/tests/qemu-iotests/058 b/tests/qemu-iotests/058
index ce35ff4ee0..0b0303fcd5 100755
--- a/tests/qemu-iotests/058
+++ b/tests/qemu-iotests/058
@@ -59,7 +59,7 @@ _supported_os Linux
 _require_command QEMU_NBD
 # 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
+_unsupported_imgopts 'refcount_bits=1\b' data_file
 
 nbd_snapshot_img="nbd:unix:$nbd_unix_socket"
 
diff --git a/tests/qemu-iotests/062 b/tests/qemu-iotests/062
index 321252298d..d7307f24ac 100755
--- a/tests/qemu-iotests/062
+++ b/tests/qemu-iotests/062
@@ -42,7 +42,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]' data_file
+_unsupported_imgopts 'compat=0.10' 'refcount_bits=1\b' data_file
 
 IMG_SIZE=64M
 
diff --git a/tests/qemu-iotests/066 b/tests/qemu-iotests/066
index a780ed7ab5..ec9dab2025 100755
--- a/tests/qemu-iotests/066
+++ b/tests/qemu-iotests/066
@@ -43,7 +43,7 @@ _supported_proto generic
 # We need zero clusters and snapshots
 # (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
+_unsupported_imgopts 'compat=0.10' 'refcount_bits=1\b' data_file
 
 # Intentionally create an unaligned image
 IMG_SIZE=$((64 * 1024 * 1024 + 512))
diff --git a/tests/qemu-iotests/068 b/tests/qemu-iotests/068
index 03e03508a6..39a04a6ab6 100755
--- a/tests/qemu-iotests/068
+++ b/tests/qemu-iotests/068
@@ -42,7 +42,7 @@ _supported_fmt qcow2
 _supported_proto generic
 # 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
+_unsupported_imgopts 'compat=0.10' 'refcount_bits=1\b' data_file
 
 IMG_SIZE=128K
 
diff --git a/tests/qemu-iotests/080 b/tests/qemu-iotests/080
index 3306500683..a7cf938204 100755
--- a/tests/qemu-iotests/080
+++ b/tests/qemu-iotests/080
@@ -44,7 +44,7 @@ _supported_os Linux
 # - 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]' data_file 'compat=0.10'
+_unsupported_imgopts 'refcount_bits=1\b' data_file 'compat=0.10'
 
 header_size=112
 
diff --git a/tests/qemu-iotests/103 b/tests/qemu-iotests/103
index 726f8313ef..6276369052 100755
--- a/tests/qemu-iotests/103
+++ b/tests/qemu-iotests/103
@@ -41,7 +41,7 @@ _supported_fmt qcow2
 _supported_proto file nfs fuse
 # 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
+_unsupported_imgopts 'refcount_bits=1\b' data_file
 
 IMG_SIZE=64K
 
diff --git a/tests/qemu-iotests/201 b/tests/qemu-iotests/201
index 1b8eb51d8f..723d792adb 100755
--- a/tests/qemu-iotests/201
+++ b/tests/qemu-iotests/201
@@ -46,7 +46,7 @@ _supported_os Linux
 
 # 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
+_unsupported_imgopts 'refcount_bits=1\b' data_file
 
 size=64M
 _make_test_img $size
diff --git a/tests/qemu-iotests/214 b/tests/qemu-iotests/214
index 0889089d81..e57e477f7c 100755
--- a/tests/qemu-iotests/214
+++ b/tests/qemu-iotests/214
@@ -41,7 +41,7 @@ _supported_proto file fuse
 # Repairing the corrupted image requires qemu-img check to store a
 # refcount up to 3, which requires at least two refcount bits.
 # External data files do not support compressed clusters.
-_unsupported_imgopts 'refcount_bits=1[^0-9]' data_file
+_unsupported_imgopts 'refcount_bits=1\b' data_file
 
 
 echo
diff --git a/tests/qemu-iotests/217 b/tests/qemu-iotests/217
index e693f326a3..8b5df8d6bc 100755
--- a/tests/qemu-iotests/217
+++ b/tests/qemu-iotests/217
@@ -42,7 +42,7 @@ _supported_proto file fuse
 # This test needs clusters with at least a refcount of 2 so that
 # OFLAG_COPIED is not set.  refcount_bits=1 is therefore unsupported.
 # (As are external data files.)
-_unsupported_imgopts 'refcount_bits=1[^0-9]' data_file
+_unsupported_imgopts 'refcount_bits=1\b' data_file
 
 echo
 echo '=== Simulating an I/O error during snapshot deletion ==='
diff --git a/tests/qemu-iotests/267 b/tests/qemu-iotests/267
index 2e2afdad9c..eb42b1ec02 100755
--- a/tests/qemu-iotests/267
+++ b/tests/qemu-iotests/267
@@ -45,7 +45,7 @@ _require_drivers copy-on-read
 
 # 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
+_unsupported_imgopts 'refcount_bits=1\b' data_file
 
 _require_devices virtio-blk
 
diff --git a/tests/qemu-iotests/271 b/tests/qemu-iotests/271
index 599b849cc6..251afa0923 100755
--- a/tests/qemu-iotests/271
+++ b/tests/qemu-iotests/271
@@ -43,7 +43,8 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
 _supported_fmt qcow2
 _supported_proto file nfs
 _supported_os Linux
-_unsupported_imgopts extended_l2 compat=0.10 cluster_size data_file 
refcount_bits=1[^0-9]
+_unsupported_imgopts extended_l2 compat=0.10 cluster_size data_file \
+    'refcount_bits=1\b'
 
 l2_offset=$((0x40000))
 
diff --git a/tests/qemu-iotests/286 b/tests/qemu-iotests/286
index 120a8375b7..76b3f80fa9 100755
--- a/tests/qemu-iotests/286
+++ b/tests/qemu-iotests/286
@@ -39,7 +39,7 @@ _supported_fmt qcow2
 _supported_proto file fuse
 # 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
+_unsupported_imgopts 'refcount_bits=1\b' data_file
 
 _make_test_img 64M
 
-- 
2.29.2




reply via email to

[Prev in Thread] Current Thread [Next in Thread]