]> git.proxmox.com Git - mirror_qemu.git/commitdiff
iotests: Provide a function for checking the creation of huge files
authorThomas Huth <thuth@redhat.com>
Mon, 2 Dec 2019 10:16:29 +0000 (11:16 +0100)
committerKevin Wolf <kwolf@redhat.com>
Wed, 18 Dec 2019 10:20:57 +0000 (11:20 +0100)
Some tests create huge (but sparse) files, and to be able to run those
tests in certain limited environments (like CI containers), we have to
check for the possibility to create such files first. Thus let's introduce
a common function to check for large files, and replace the already
existing checks in the iotests 005 and 220 with this function.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
tests/qemu-iotests/005
tests/qemu-iotests/220
tests/qemu-iotests/common.rc

index 58442762fe366d0f5eb9bf7a1860d4fef2914bf1..b6d03ac37deabcbf6372ffb1711398d20c81a176 100755 (executable)
@@ -59,10 +59,7 @@ fi
 # Sanity check: For raw, we require a file system that permits the creation
 # of a HUGE (but very sparse) file. Check we can create it before continuing.
 if [ "$IMGFMT" = "raw" ]; then
-    if ! truncate --size=5T "$TEST_IMG"; then
-        _notrun "file system on $TEST_DIR does not support large enough files"
-    fi
-    rm "$TEST_IMG"
+    _require_large_file 5T
 fi
 
 echo
index 2d62c5dcac2a258ed82cd4bca7757ec8b1ec3824..15159270d33550e4649a25fe772e46e25303de97 100755 (executable)
@@ -42,10 +42,8 @@ echo "== Creating huge file =="
 
 # Sanity check: We require a file system that permits the creation
 # of a HUGE (but very sparse) file.  tmpfs works, ext4 does not.
-if ! truncate --size=513T "$TEST_IMG"; then
-    _notrun "file system on $TEST_DIR does not support large enough files"
-fi
-rm "$TEST_IMG"
+_require_large_file 513T
+
 IMGOPTS='cluster_size=2M,refcount_bits=1' _make_test_img 513T
 
 echo "== Populating refcounts =="
index 0cc8acc9edd23e1cadf942676882de8fe2751fb4..6f0582c79af429c14f197b301f5cb27585736540 100644 (file)
@@ -643,5 +643,15 @@ _require_drivers()
     done
 }
 
+# Check that we have a file system that allows huge (but very sparse) files
+#
+_require_large_file()
+{
+    if ! truncate --size="$1" "$TEST_IMG"; then
+        _notrun "file system on $TEST_DIR does not support large enough files"
+    fi
+    rm "$TEST_IMG"
+}
+
 # make sure this script returns success
 true