Statistics
| Branch: | Revision:

root / tests / qemu-iotests @ 6ce2d77a

# Date Author Comment
049255b6 02/29/2012 04:48 pm Stefan Hajnoczi

qemu-iotests: export TEST_DIR for non-bash tests

Since qemu-iotests may need to create large image files it is possible
to specify the test directory. The TEST_DIR variable needs to be
exported so non-bash tests can make use of it.

Signed-off-by: Stefan Hajnoczi <>...

f345cfd0 02/29/2012 04:48 pm Stefan Hajnoczi

qemu-iotests: add iotests Python module

Block layer tests that involve QMP commands rather than qemu-img or
qemu-io are not well-suited for shell scripting. This patch adds a
Python module which allows tests to be written in Python instead.

The basic API is:...

37ce63eb 02/29/2012 04:48 pm Stefan Hajnoczi

test: add image streaming tests

This patch adds a test suite for the image streaming feature. It
exercises the 'block_stream', 'block_job_cancel', 'block_job_set_speed',
and 'query-block-jobs' QMP commands.

Signed-off-by: Stefan Hajnoczi <>...

a06d5cc2 02/29/2012 04:48 pm Kevin Wolf

qemu-iotests: Filter out DOS line endings

This one makes it possible to run qemu-iotests on a Windows build using Wine
and get somewhat meaningful results.

Signed-off-by: Kevin Wolf <>
Reviewed-by: Stefan Hajnoczi <>

92ab69b6 02/29/2012 04:48 pm Kevin Wolf

qemu-iotests: 026: Reduce output changes for cache=none qcow2

qemu-iotests supports the -nocache option which makes the tests run with
cache=none. For blkdebug tests with qcow2 this means that we may see
test results that differ from cache=writethrough. This patch makes the...

6ce2d77a 02/29/2012 04:48 pm Kevin Wolf

qemu-iotests: Test rebase with short backing file

This tests that qemu-img rebase doesn't assume that the backing file has
the same size as the image, but considers that it can be smaller.

Signed-off-by: Kevin Wolf <>
Reviewed-by: Stefan Hajnoczi <>

5177c512 02/23/2012 11:29 am Christoph Hellwig

qemu-iotests: only run 016 for file and sheepdog protocols

016 writes past EOF which isn't support by most protocols, so limit
it to file and sheepdog, which explicitly support it.

Pointed out by Josh Durgin <>.

Signed-off-by: Christoph Hellwig <>

5e654e08 02/23/2012 11:29 am Mitnick Lyu

qemu-iotests: common.config: Fix no $TEST_DIR directory

mkdir $TEST_DIR on common.config first run

Signed-off-by: Mitnick Lyu <>
Signed-off-by: Christoph Hellwig <>

92eeab5b 02/23/2012 11:29 am Josh Durgin

qemu-iotests: Update rbd support

rbd implements bdrv_truncate, so test 025 will work.

Signed-off-by: Josh Durgin <>
Signed-off-by: Christoph Hellwig <>

25bb8a36 02/23/2012 11:29 am Stefan Hajnoczi

qemu-iotests: add qed support to 025 image resize test

QED now supports the truncate (aka resize) operation for growing images.
Update test 025 so it runs for QED.

Signed-off-by: Stefan Hajnoczi <>
Signed-off-by: Christoph Hellwig <>

bfe85248 02/23/2012 11:29 am Kevin Wolf

qemu-iotests: Update filter for default cluster size

Until recently, qemu-img create displayed cluster_size=0 for the default
cluster size. It is changed to display the real cluster size now, which results
in the cluster size not being filtered out any more....

8455e4ee 02/23/2012 11:29 am Kevin Wolf

qemu-iotests: test loading internal snapshots

Test loading internal snapshots where the L1 table of the snapshot
is smaller than the current L1 table.

Signed-off-by: Kevin Wolf <>
Signed-off-by: Christoph Hellwig <>

df4b627e 02/23/2012 11:29 am Lucas Meneghel Rodrigues

qemu-iotests: check: print relevant path information

Print the paths of the programs under test
(qemu, qemu-img and qemu-io).

Signed-off-by: Lucas Meneghel Rodrigues <>
Signed-off-by: Christoph Hellwig <>

d305fd5d 02/23/2012 11:29 am Lucas Meneghel Rodrigues

qemu-iotests: common.config: Allow use of arbitrary qemu* paths

Since we might want to test arbitrary qemu, qemu-img and
qemu-io paths, allow users to specify environment variable
values for QEMU_PROG, QEMU_IMG_PROG and QEMU_IO_PROG so
the testsuite will use those values rather than find them...

f5a4bbd9 02/23/2012 11:29 am Stefan Hajnoczi

qemu-iotests: add support for qed format

Signed-off-by: Stefan Hajnoczi <>
Signed-off-by: Christoph Hellwig <>

657c166f 02/23/2012 11:29 am Stefan Weil

qemu-iotests: README: Fix spelling

Signed-off-by: Stefan Weil <>
Signed-off-by: Christoph Hellwig <>

62284d17 02/23/2012 11:29 am Stefan Hajnoczi

qemu-iotests: filter IMGFMT correctly in 019

Test 019 can be run with qcow2 and qed image formats. Replace the
specific image format value with "IMGFMT" so the golden output does not
hardcode qcow2 or qed.

This patch also includes a typo fix for "occurrences"....

9cdfa1b3 02/23/2012 11:29 am MORITA Kazutaka

qemu-iotests: add support for rbd and sheepdog protocols

This patch introduces tests for protocols other than file, and
initially supports rbd and sheepdog.

Signed-off-by: MORITA Kazutaka <>
Signed-off-by: Christoph Hellwig <>

dd0c35d6 02/23/2012 11:29 am Stefan Hajnoczi

qemu-iotests: Use zero-based offsets for IO patterns

The io_pattern style functions have the following loop:

for i in `seq 1 $count`; do
echo ... $(( start + i * step )) ...
done

Offsets are 1-based so start=1024, step=512, count=4 yields:
1536, 2048, 2560, 3072...

2684871a 02/23/2012 11:29 am Christoph Hellwig

qemu-iotests: filter TEST_DIR correctly in 019

Signed-off-by: Kevin Wolf <>

939e1640 02/22/2012 05:17 pm Kevin Wolf

qemu-iotests: test qemu-img rebase

Signed-off-by: Kevin Wolf <>
Signed-off-by: Christoph Hellwig <>

908eaf68 02/22/2012 05:17 pm Stefan Hajnoczi

qemu-iotests: explicitly use bash interpreter

The tests use bash language features like 'let', which aren't supported
by /bin/sh on systems that use a conservative shell like dash. This
patch changes the interpreter to /bin/bash.

Signed-off-by: Stefan Hajnoczi <>...

596f4f96 02/22/2012 05:17 pm Stefan Hajnoczi

qemu-iotests: test bdrv_truncate

This patch adds an image resize grow test to ensure that existing data
is not lost during grow and new space is zeroed.

Signed-off-by: Stefan Hajnoczi <>
Signed-off-by: Christoph Hellwig <>

d586bc63 02/22/2012 05:17 pm Kevin Wolf

qemu-iotests: improve rebase test

The old test didn't consider cases in which the COW files contains some
unallocated clusters and after them allocated ones again.

Signed-off-by: Kevin Wolf <>
Signed-off-by: Christoph Hellwig <>

52280eac 02/22/2012 05:17 pm Kevin Wolf

qemu-iotests: qcow2 error path tests

This adds test cases for qcow2 error paths (using blkdebug)

Signed-off-by: Kevin Wolf <>
Signed-off-by: Christoph Hellwig <>

72bb2025 02/22/2012 05:17 pm Kevin Wolf

qemu-iotests: consider more cases in parsing qemu-io output

I got a bug report with test output diffs like this:

-4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
+4 KiB, 1 ops; 0.0000 sec (inf EiB/sec and inf ops/sec)

This patch extends the regular expression to consider terabytes, petabytes and...

2547caa1 02/22/2012 05:17 pm Kevin Wolf

qemu-iotests: improve test for qemu-img convert with backing file

Additionally to testing the qemu-img convert -B option, also test
-o backing_file.

Also, the old test acidentlly used a pattern of zeros for most of the writes,
so that the allocation test didn't really work out. This is fixed by using an...

89d22bc3 02/22/2012 05:17 pm Stefan Hajnoczi

qemu-iotests: add sub-cluster allocating write test for sparse image formats

Image formats that grow the image file on demand and are organized into
clusters must handle sub-cluster allocating writes. Such writes touch
a portion of a previously unallocated data cluster. After the image...

8268b767 02/22/2012 05:17 pm Stefan Hajnoczi

qemu-iotests: add read/write from smaller backing image test

Some image formats support backing images that are smaller than the
image file. This patch adds a test that verifies that reads and writes
beyond the end of backing image work.

Unallocated reads beyond the end of the backing file should produce...

727822f5 02/22/2012 05:17 pm Kevin Wolf

qemu-iotests: update expected results after qemu-img changes

The error message for leaked clusters has changed. qemu-iotests needs to be
updated to pass 026 again.

Signed-off-by: Kevin Wolf <>
Signed-off-by: Christoph Hellwig <>

581e7d53 02/22/2012 05:17 pm Kevin Wolf

qemu-iotests: fix 019 golden output

Signed-off-by: Kevin Wolf <>
Signed-off-by: Christoph Hellwig <>

c83f64d4 02/22/2012 05:17 pm Stefan Weil

qemu-iotests: fix pattern for write test

The write pattern value 0axb is invalid and evaluates to 0,
so the read check (which uses a correct value of 0xab) will fail.

This failure will only be detected with a separate patch for
qemu-io. Without it, qemu-io cannot interpret hex values...

4bacf057 02/22/2012 05:17 pm Christoph Hellwig

qemu-iotests: test I/O after EOF for growable files

Signed-off-by: Christoph Hellwig <>
Reviwed-by: Kevin Wolf <>

2557d865 02/22/2012 05:17 pm Kevin Wolf

qemu-iotests: simple backing file test

Signed-off-by: Kevin Wolf <>
Signed-off-by: Christoph Hellwig <>

16701400 02/22/2012 05:17 pm Kevin Wolf

qemu-iotests: test merge of backing file when converting

Signed-off-by: Kevin Wolf <>
Signed-off-by: Christoph Hellwig <>

9128ae5e 02/22/2012 05:17 pm Kevin Wolf

qemu-iotests: test qemu-img convert with backing file for the output image

Signed-off-by: Kevin Wolf <>
Signed-off-by: Christoph Hellwig <>

ed4dc684 02/22/2012 05:17 pm Kevin Wolf

qemu-iotests: test commiting changes to backing file

Signed-off-by: Kevin Wolf <>
Signed-off-by: Christoph Hellwig <>

e8c212d6 02/22/2012 05:17 pm Christoph Hellwig

qemu-iotests: replace FSF postal addresses with www.gnu.org links

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....

713d76e8 02/22/2012 05:17 pm Christoph Hellwig

qemu-iotests: test invalid pattern argument handling in qemu-io

Signed-off-by: Christoph Hellwig <>
Reviewed-by: Kevin Wolf <>

9c9afe57 02/22/2012 05:17 pm Kevin Wolf

qemu-iotests: common.pattern: allow spaces in io() operation

We need to be able to pass "write -b" as an operation to the pattern testing
functions. Unfortunately, this contains a space character...

Signed-off-by: Kevin Wolf <>
Signed-off-by: Christoph Hellwig <>

e9029212 02/22/2012 05:17 pm Kevin Wolf

qemu-iotests: test bdrv_load/save_vmstate

Signed-off-by: Kevin Wolf <>
Signed-off-by: Christoph Hellwig <>

f00851a1 02/22/2012 05:17 pm Kevin Wolf

qemu-iotests: fix expected result for 019 after qemu-io change

The output of the alloc command in qemu-io has changed.

Signed-off-by: Kevin Wolf <>
Signed-off-by: Christoph Hellwig <>

3b5fe6e6 02/22/2012 05:17 pm Stefan Weil

qemu-iotests: add support for vdi format "static" option

VDI supports an image option 'static'.
Ignore "static=off" from qemu-img output.

Signed-off-by: Stefan Weil <>
Signed-off-by: Christoph Hellwig <>

8fc1024c 02/22/2012 05:17 pm Kevin Wolf

qemu-iotests: align test requests according to cluster size

Change the io_test and io_test2 functions to take the cluster size of the image
and the number of test requests to issue. Tests are changed to specify a
cluster size (usually 4k), but expected test results stay the same for now...

3da9c8fb 02/22/2012 05:17 pm Kevin Wolf

qemu-iotests: 019: Make cluster size dynamic

Change the offsets for test requests according to CLUSTER_SIZE.

Signed-off-by: Kevin Wolf <>
Signed-off-by: Christoph Hellwig <>

ac5e2b20 02/22/2012 05:17 pm Kevin Wolf

qemu-iotests: test larger clusters sizes on qcow2

This patch adds test case 023 which tests some more cluster sizes. For
anythinger larger than 4k clusters we can't use requests that are l2_size or
more (128k for 1k clusters, 2 MB for 4k clusters, 512 MB for 64k clusters)....

3778057d 02/22/2012 05:17 pm Kevin Wolf

qemu-iotests: add test for refcount table growth and snapshots

015: Combined test to grow the refcount table and test snapshots.

Signed-off-by: Kevin Wolf <>
Signed-off-by: Christoph Hellwig <>

b67f3068 02/22/2012 05:17 pm Christoph Hellwig

qemu-iotests: add support for the vdi image format

Signed-off-by: Christoph Hellwig <>

e021915a 02/22/2012 05:17 pm Christoph Hellwig

qemu-iotests: remove test image after 015 is done

Signed-off-by: Christoph Hellwig <>

e76a8e89 02/22/2012 05:17 pm Christoph Hellwig

qemu-iotests: make a few more tests generic

Pretend that a non-implemented check is always successful and thus allow
various tests that were qcow2-specific before to be generic.

Signed-off-by: Christoph Hellwig <>
Reviewed-by: Kevin Wolf <>

5d9c577d 02/22/2012 05:16 pm Christoph Hellwig

qemu-iotests: skip test 005 for vpc format images

The vpc format doesn't support large enough image size for this test.

Signed-off-by: Kevin Wolf <>

6bf19c94 02/22/2012 05:15 pm Christoph Hellwig

qemu-iotests: Initial import into the public repository.

Signed-off-by: Kevin Wolf <>