qemu-e2k/tests/qemu-iotests
Kevin Wolf ecdd5333ab qcow2: Gather clusters in a looping loop
Instead of just checking once in exactly this order if there are
dependendies, non-COW clusters and new allocation, this starts looping
around these. This way we can, for example, gather non-COW clusters after
new allocations as long as the host cluster offsets stay contiguous.

Once handle_dependencies() is extended so that COW areas of in-flight
allocations can be overwritten, this allows to continue with gathering
other clusters (we wouldn't be able to do that without this change
because we would have missed a possible second dependency in one of the
next clusters).

This means that in the typical sequential write case, we can combine the
COW overwrite of one cluster with the allocation of the next cluster as
soon as something like Delayed COW gets actually implemented. It is only
by avoiding splitting requests this way that Delayed COW actually starts
improving performance noticably.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2013-03-28 11:52:44 +01:00
..
.gitignore
001
001.out
002
002.out qemu-io: correctly print non-integer values as decimals 2012-05-10 10:32:12 +02:00
003
003.out
004
004.out
005
005.out
006
006.out
007 qemu-iotests: use -nographic in test case 007 2013-03-15 16:07:51 +01:00
007.out
008
008.out
009
009.out
010
010.out
011
011.out
012
012.out qemu-io: correctly print non-integer values as decimals 2012-05-10 10:32:12 +02:00
013
013.out
014
014.out
015
015.out
016
016.out qemu-io: correctly print non-integer values as decimals 2012-05-10 10:32:12 +02:00
017
017.out qemu-io: correctly print non-integer values as decimals 2012-05-10 10:32:12 +02:00
018
018.out qemu-io: correctly print non-integer values as decimals 2012-05-10 10:32:12 +02:00
019
019.out qemu-io: correctly print non-integer values as decimals 2012-05-10 10:32:12 +02:00
020
020.out qemu-io: correctly print non-integer values as decimals 2012-05-10 10:32:12 +02:00
021
021.out
022
022.out
023
023.out qemu-io: correctly print non-integer values as decimals 2012-05-10 10:32:12 +02:00
024
024.out
025
025.out
026 qemu-img: find the image end offset during check 2013-02-22 21:21:08 +01:00
026.out
027
027.out qemu-io: correctly print non-integer values as decimals 2012-05-10 10:32:12 +02:00
028
028.out qemu-io: correctly print non-integer values as decimals 2012-05-10 10:32:12 +02:00
029
029.out
030 qemu-iotests: add tests for streaming error handling 2012-09-28 19:40:56 +02:00
030.out qemu-iotests: add tests for streaming error handling 2012-09-28 19:40:56 +02:00
031 qemu-iotests: Fix test 031 for qcow2 v3 support 2012-04-20 15:57:30 +02:00
031.out qcow2: implement lazy refcounts 2012-08-06 22:39:14 +02:00
032
032.out
033
033.out qemu-io: correctly print non-integer values as decimals 2012-05-10 10:32:12 +02:00
034 qemu-iotests: Test backing file COW with zero clusters 2012-04-20 15:57:30 +02:00
034.out qemu-iotests: Test backing file COW with zero clusters 2012-04-20 15:57:30 +02:00
035 qemu-iotests: mark 035 qcow2-only 2012-05-25 18:13:44 +02:00
035.out qemu-io: correctly print non-integer values as decimals 2012-05-10 10:32:12 +02:00
036 qemu-img: find the image end offset during check 2013-02-22 21:21:08 +01:00
036.out qcow2: implement lazy refcounts 2012-08-06 22:39:14 +02:00
037 qemu-iotests: Some backing file COW tests 2012-06-15 14:03:43 +02:00
037.out qemu-iotests: Some backing file COW tests 2012-06-15 14:03:43 +02:00
038 qemu-iotests: COW with many AIO requests on the same cluster 2012-06-15 14:03:43 +02:00
038.out qcow2: Improve check for overlapping allocations 2013-03-28 11:52:43 +01:00
039 qemu-img: find the image end offset during check 2013-02-22 21:21:08 +01:00
039.out block: add BLOCK_O_CHECK for qemu-img check 2012-08-10 10:25:12 +02:00
040 qemu-iotests: add relative backing file tests for block-commit (040) 2012-10-24 10:26:19 +02:00
040.out qemu-iotests: add relative backing file tests for block-commit (040) 2012-10-24 10:26:19 +02:00
041 block: Adds mirroring tests for resized images 2013-02-01 14:58:28 +01:00
041.out block: Adds mirroring tests for resized images 2013-02-01 14:58:28 +01:00
042 qemu-iotests: Test qemu-img operation on zero size image 2012-10-24 10:26:18 +02:00
042.out qemu-iotests: Test qemu-img operation on zero size image 2012-10-24 10:26:18 +02:00
043 qemu-iotests: Add 043 backing file chain infinite loop test 2012-10-24 10:26:19 +02:00
043.out qemu-iotests: Add 043 backing file chain infinite loop test 2012-10-24 10:26:19 +02:00
044 qemu-iotests: qcow2: Test growing large refcount table 2012-11-14 18:19:21 +01:00
044.out qcow2: Gather clusters in a looping loop 2013-03-28 11:52:44 +01:00
045 tests: Add tests for fdsets 2012-12-11 11:05:11 +01:00
045.out tests: Add tests for fdsets 2012-12-11 11:05:11 +01:00
046 qemu-iotests: More concurrent allocation scenarios 2013-03-28 11:52:42 +01:00
046.out qemu-iotests: More concurrent allocation scenarios 2013-03-28 11:52:42 +01:00
047 qemu-iotests: Add regression test for b7ab0fea 2013-02-01 14:58:28 +01:00
047.out qemu-iotests: Add regression test for b7ab0fea 2013-02-01 14:58:28 +01:00
048 qemu-iotests: Add qemu-img compare test 2013-02-22 21:21:10 +01:00
048.out qemu-iotests: Add qemu-img compare test 2013-02-22 21:21:10 +01:00
049 qemu-iotests: Test qcow2 image creation options 2013-02-22 21:21:10 +01:00
049.out qemu-iotests: Test qcow2 image creation options 2013-02-22 21:21:10 +01:00
050 qemu-iotests: add tests for rebasing zero clusters 2013-03-15 16:07:51 +01:00
050.out qemu-iotests: add tests for rebasing zero clusters 2013-03-15 16:07:51 +01:00
052 qemu-iotests: add 052 BDRV_O_SNAPSHOT test 2013-03-19 11:48:37 +01:00
052.out qemu-iotests: add 052 BDRV_O_SNAPSHOT test 2013-03-19 11:48:37 +01:00
check qemu-iotests: Add -o and make v3 the default for qcow2 2012-04-20 15:57:30 +02:00
common tests: allow qemu-iotests to be run against nbd backend 2012-11-14 18:19:21 +01:00
common.config tests: allow qemu-iotests to be run against nbd backend 2012-11-14 18:19:21 +01:00
common.filter
common.pattern
common.rc qemu-img: add compressed clusters to BlockFragInfo 2013-02-22 21:21:09 +01:00
COPYING
group qemu-iotests: add 052 BDRV_O_SNAPSHOT test 2013-03-19 11:48:37 +01:00
iotests.py tests: Add tests for fdsets 2012-12-11 11:05:11 +01:00
Makefile
qcow2.py qemu-iotests: qcow2: Test growing large refcount table 2012-11-14 18:19:21 +01:00
qed.py qemu-iotests: add qed.py image manipulation utility 2012-08-06 22:39:14 +02:00
README

=== This is the QEMU I/O test suite ===

* Intro

This package contains a simple test suite for the I/O layer of qemu.
It does not require a guest, but only the qemu, qemu-img and qemu-io
binaries.  This does limit it to exercise the low-level I/O path only
but no actual block drivers like ide, scsi or virtio.

* Usage

Just run ./check to run all tests for the raw image format, or ./check
-qcow2 to test the qcow2 image format.  The output of ./check -h explains
additional options to test further image formats or I/O methods.

* Feedback and patches

Please send improvements to the test suite, general feedback or just
reports of failing tests cases to qemu-devel@savannah.nongnu.org.