Patchwork qemu-iotests: mark 035 qcow2-only

login
register
mail settings
Submitter Stefan Hajnoczi
Date May 24, 2012, 3:26 p.m.
Message ID <1337873211-16124-1-git-send-email-stefanha@linux.vnet.ibm.com>
Download mbox | patch
Permalink /patch/161153/
State New
Headers show

Comments

Stefan Hajnoczi - May 24, 2012, 3:26 p.m.
The 035 parallel aio write test relies on knowledge of qcow2 metadata
layout to stress parallel L2 table accesses.  This only works for qcow2
unless we add additional calculations for qed or other formats.

Mark this test as qcow2-only.

Note that the test is strictly speaking non-deterministic although the
output produced is reliable with qcow2.  This is because the aio_write
command returns before the aio write request has completed.  Completions
can occur at any time afterwards and cause a message to be printed.
Therefore the exact output of this test is not deterministic but we seem
to get away with it for qcow2 (maybe due to coroutine and main loop
scheduling).

Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
---
I was originally going to filter out the "qemu-io> " prompt so that
non-determinism is not an issue.  But it turns out that aio write completion
messages can be printed at any time too.   Short of sorting the output before
golden master comparison, we don't have a good solution here.  Sorting output
would be confusing since we normally don't do that in other tests.

 tests/qemu-iotests/035 |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Kevin Wolf - May 25, 2012, 4:17 p.m.
Am 24.05.2012 17:26, schrieb Stefan Hajnoczi:
> The 035 parallel aio write test relies on knowledge of qcow2 metadata
> layout to stress parallel L2 table accesses.  This only works for qcow2
> unless we add additional calculations for qed or other formats.
> 
> Mark this test as qcow2-only.
> 
> Note that the test is strictly speaking non-deterministic although the
> output produced is reliable with qcow2.  This is because the aio_write
> command returns before the aio write request has completed.  Completions
> can occur at any time afterwards and cause a message to be printed.
> Therefore the exact output of this test is not deterministic but we seem
> to get away with it for qcow2 (maybe due to coroutine and main loop
> scheduling).
> 
> Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>

Thanks, applied to the block branch.

Kevin

Patch

diff --git a/tests/qemu-iotests/035 b/tests/qemu-iotests/035
index 56616a1..9d2d347 100755
--- a/tests/qemu-iotests/035
+++ b/tests/qemu-iotests/035
@@ -39,7 +39,7 @@  trap "_cleanup; exit \$status" 0 1 2 3 15
 . ./common.rc
 . ./common.filter
 
-_supported_fmt generic
+_supported_fmt qcow2
 _supported_proto generic
 _supported_os Linux