* [Qemu-devel] [PATCH v2 0/5] iotests: Selfish patches
@ 2019-06-25 21:19 Max Reitz
2019-06-25 21:19 ` [Qemu-devel] [PATCH v2 1/5] iotests: Add -display none to the qemu options Max Reitz
` (4 more replies)
0 siblings, 5 replies; 9+ messages in thread
From: Max Reitz @ 2019-06-25 21:19 UTC (permalink / raw)
To: qemu-block; +Cc: Kevin Wolf, qemu-devel, Max Reitz
Hi,
These are some rather selfish iotests patches. The first patch helps me
personally because I tend to run the tests over SSH and forget to set
$DISPLAY. That makes test 139 skip the tests annotated with
skip_if_unsupprted(), because iotests.py can no longer determine the
list of whitelisted formats.
Patches 2 through 5 are specifically for RHEL. We have not whitelisted
null-aio, so it would be nice if tests didn’t require it. Sorry, I
don’t have a better reason to give.
In all seriousness, null-co is used widely in many tests, it basically
is our standard null driver. Tests should prefer it over null-aio, just
for consistency alone. It is not completely unreasonable to treat
null-aio as optional. I guess.
v2:
- Allow tests to use the unittest module’s skipTest() so it is possible
to skip a test case in the setUp() method (new patch 3). Then use
this in patches 4 and 5 to skip all null-aio cases instead of falling
back to null-co and thus running tests twice.
- Patch 1 needed to be rebased on
4a715461c8eab628e79b1e6889d650455e043b88
(“tests/qemu-iotests/check: Pick a default machine if necessary”)
git backport-diff against v1:
Key:
[----] : patches are identical
[####] : number of functional differences between upstream/downstream patch
[down] : patch is downstream-only
The flags [FC] indicate (F)unctional and (C)ontextual differences, respectively
001/5:[0008] [FC] 'iotests: Add -display none to the qemu options'
002/5:[----] [--] 'iotests: Prefer null-co over null-aio'
003/5:[down] 'iotests: Allow skipping test cases'
004/5:[0007] [FC] 'iotests: Test driver whitelisting in 093'
005/5:[0007] [FC] 'iotests: Test driver whitelisting in 136'
Max Reitz (5):
iotests: Add -display none to the qemu options
iotests: Prefer null-co over null-aio
iotests: Allow skipping test cases
iotests: Test driver whitelisting in 093
iotests: Test driver whitelisting in 136
tests/qemu-iotests/093 | 21 ++++++++++++++-------
tests/qemu-iotests/136 | 16 ++++++++++++----
tests/qemu-iotests/245 | 2 +-
tests/qemu-iotests/check | 6 +++---
tests/qemu-iotests/iotests.py | 20 ++++++++++++++++++--
5 files changed, 48 insertions(+), 17 deletions(-)
--
2.21.0
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Qemu-devel] [PATCH v2 1/5] iotests: Add -display none to the qemu options
2019-06-25 21:19 [Qemu-devel] [PATCH v2 0/5] iotests: Selfish patches Max Reitz
@ 2019-06-25 21:19 ` Max Reitz
2019-06-26 10:36 ` Philippe Mathieu-Daudé
2019-06-25 21:19 ` [Qemu-devel] [PATCH v2 2/5] iotests: Prefer null-co over null-aio Max Reitz
` (3 subsequent siblings)
4 siblings, 1 reply; 9+ messages in thread
From: Max Reitz @ 2019-06-25 21:19 UTC (permalink / raw)
To: qemu-block; +Cc: Kevin Wolf, qemu-devel, Max Reitz
Without this argument, qemu will print an angry message about not being
able to connect to a display server if $DISPLAY is not set. For me,
that breaks iotests.supported_formats() because it thus only sees
["Could", "not", "connect"] as the supported formats.
Signed-off-by: Max Reitz <mreitz@redhat.com>
---
tests/qemu-iotests/check | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/tests/qemu-iotests/check b/tests/qemu-iotests/check
index f925606cc5..f2a0df8af2 100755
--- a/tests/qemu-iotests/check
+++ b/tests/qemu-iotests/check
@@ -581,13 +581,13 @@ export QEMU_PROG="$(type -p "$QEMU_PROG")"
case "$QEMU_PROG" in
*qemu-system-arm|*qemu-system-aarch64)
- export QEMU_OPTIONS="-nodefaults -machine virt,accel=qtest"
+ export QEMU_OPTIONS="-nodefaults -display none -machine virt,accel=qtest"
;;
*qemu-system-tricore)
- export QEMU_OPTIONS="-nodefaults -machine tricore_testboard,accel=qtest"
+ export QEMU_OPTIONS="-nodefaults -display none -machine tricore_testboard,accel=qtest"
;;
*)
- export QEMU_OPTIONS="-nodefaults -machine accel=qtest"
+ export QEMU_OPTIONS="-nodefaults -display none -machine accel=qtest"
;;
esac
--
2.21.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Qemu-devel] [PATCH v2 2/5] iotests: Prefer null-co over null-aio
2019-06-25 21:19 [Qemu-devel] [PATCH v2 0/5] iotests: Selfish patches Max Reitz
2019-06-25 21:19 ` [Qemu-devel] [PATCH v2 1/5] iotests: Add -display none to the qemu options Max Reitz
@ 2019-06-25 21:19 ` Max Reitz
2019-08-12 18:59 ` [Qemu-devel] [Qemu-block] " John Snow
2019-06-25 21:19 ` [Qemu-devel] [PATCH v2 3/5] iotests: Allow skipping test cases Max Reitz
` (2 subsequent siblings)
4 siblings, 1 reply; 9+ messages in thread
From: Max Reitz @ 2019-06-25 21:19 UTC (permalink / raw)
To: qemu-block; +Cc: Kevin Wolf, qemu-devel, Max Reitz
We use null-co basically everywhere in the iotests. Unless we want to
test null-aio specifically, we should use it instead (for consistency).
Signed-off-by: Max Reitz <mreitz@redhat.com>
---
tests/qemu-iotests/093 | 7 +++----
tests/qemu-iotests/245 | 2 +-
2 files changed, 4 insertions(+), 5 deletions(-)
diff --git a/tests/qemu-iotests/093 b/tests/qemu-iotests/093
index d88fbc182e..bd56c94708 100755
--- a/tests/qemu-iotests/093
+++ b/tests/qemu-iotests/093
@@ -267,13 +267,12 @@ class ThrottleTestCoroutine(ThrottleTestCase):
test_img = "null-co://"
class ThrottleTestGroupNames(iotests.QMPTestCase):
- test_img = "null-aio://"
max_drives = 3
def setUp(self):
self.vm = iotests.VM()
for i in range(0, self.max_drives):
- self.vm.add_drive(self.test_img, "throttling.iops-total=100")
+ self.vm.add_drive("null-co://", "throttling.iops-total=100")
self.vm.launch()
def tearDown(self):
@@ -377,10 +376,10 @@ class ThrottleTestRemovableMedia(iotests.QMPTestCase):
def test_removable_media(self):
# Add a couple of dummy nodes named cd0 and cd1
- result = self.vm.qmp("blockdev-add", driver="null-aio",
+ result = self.vm.qmp("blockdev-add", driver="null-co",
node_name="cd0")
self.assert_qmp(result, 'return', {})
- result = self.vm.qmp("blockdev-add", driver="null-aio",
+ result = self.vm.qmp("blockdev-add", driver="null-co",
node_name="cd1")
self.assert_qmp(result, 'return', {})
diff --git a/tests/qemu-iotests/245 b/tests/qemu-iotests/245
index bc1ceb9792..ae169778b0 100644
--- a/tests/qemu-iotests/245
+++ b/tests/qemu-iotests/245
@@ -598,7 +598,7 @@ class TestBlockdevReopen(iotests.QMPTestCase):
##################
###### null ######
##################
- opts = {'driver': 'null-aio', 'node-name': 'root', 'size': 1024}
+ opts = {'driver': 'null-co', 'node-name': 'root', 'size': 1024}
result = self.vm.qmp('blockdev-add', conv_keys = False, **opts)
self.assert_qmp(result, 'return', {})
--
2.21.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Qemu-devel] [PATCH v2 3/5] iotests: Allow skipping test cases
2019-06-25 21:19 [Qemu-devel] [PATCH v2 0/5] iotests: Selfish patches Max Reitz
2019-06-25 21:19 ` [Qemu-devel] [PATCH v2 1/5] iotests: Add -display none to the qemu options Max Reitz
2019-06-25 21:19 ` [Qemu-devel] [PATCH v2 2/5] iotests: Prefer null-co over null-aio Max Reitz
@ 2019-06-25 21:19 ` Max Reitz
2019-08-12 19:00 ` [Qemu-devel] [Qemu-block] " John Snow
2019-06-25 21:19 ` [Qemu-devel] [PATCH v2 4/5] iotests: Test driver whitelisting in 093 Max Reitz
2019-06-25 21:19 ` [Qemu-devel] [PATCH v2 5/5] iotests: Test driver whitelisting in 136 Max Reitz
4 siblings, 1 reply; 9+ messages in thread
From: Max Reitz @ 2019-06-25 21:19 UTC (permalink / raw)
To: qemu-block; +Cc: Kevin Wolf, qemu-devel, Max Reitz
case_notrun() does not actually skip the current test case. It just
adds a "notrun" note and then returns to the caller, who manually has to
skip the test. Generally, skipping a test case is as simple as
returning from the current function, but not always: For example, this
model does not allow skipping tests already in the setUp() function.
Thus, add a QMPTestCase.case_skip() function that invokes case_notrun()
and then self.skipTest(). To make this work, we need to filter the
information on how many test cases were skipped from the unittest
output.
Signed-off-by: Max Reitz <mreitz@redhat.com>
---
tests/qemu-iotests/iotests.py | 20 ++++++++++++++++++--
1 file changed, 18 insertions(+), 2 deletions(-)
diff --git a/tests/qemu-iotests/iotests.py b/tests/qemu-iotests/iotests.py
index 3ecef5bc90..1b0ac50153 100644
--- a/tests/qemu-iotests/iotests.py
+++ b/tests/qemu-iotests/iotests.py
@@ -741,6 +741,11 @@ class QMPTestCase(unittest.TestCase):
return self.pause_wait(job_id)
return result
+ def case_skip(self, reason):
+ '''Skip this test case'''
+ case_notrun(reason)
+ self.skipTest(reason)
+
def notrun(reason):
'''Skip this test suite'''
@@ -752,7 +757,10 @@ def notrun(reason):
sys.exit(0)
def case_notrun(reason):
- '''Skip this test case'''
+ '''Mark this test case as not having been run, but do not actually
+ skip it; that is left to the caller. See QMPTestCase.case_skip()
+ for a variant that actually skips the current test case.'''
+
# Each test in qemu-iotests has a number ("seq")
seq = os.path.basename(sys.argv[0])
@@ -879,4 +887,12 @@ def main(supported_fmts=[], supported_oses=['linux'], supported_cache_modes=[],
unittest.main(testRunner=MyTestRunner)
finally:
if not debug:
- sys.stderr.write(re.sub(r'Ran (\d+) tests? in [\d.]+s', r'Ran \1 tests', output.getvalue()))
+ out = output.getvalue()
+ out = re.sub(r'Ran (\d+) tests? in [\d.]+s', r'Ran \1 tests', out)
+
+ # Hide skipped tests from the reference output
+ out = re.sub(r'OK \(skipped=\d+\)', 'OK', out)
+ out_first_line, out_rest = out.split('\n', 1)
+ out = out_first_line.replace('s', '.') + '\n' + out_rest
+
+ sys.stderr.write(out)
--
2.21.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Qemu-devel] [PATCH v2 4/5] iotests: Test driver whitelisting in 093
2019-06-25 21:19 [Qemu-devel] [PATCH v2 0/5] iotests: Selfish patches Max Reitz
` (2 preceding siblings ...)
2019-06-25 21:19 ` [Qemu-devel] [PATCH v2 3/5] iotests: Allow skipping test cases Max Reitz
@ 2019-06-25 21:19 ` Max Reitz
2019-06-25 21:19 ` [Qemu-devel] [PATCH v2 5/5] iotests: Test driver whitelisting in 136 Max Reitz
4 siblings, 0 replies; 9+ messages in thread
From: Max Reitz @ 2019-06-25 21:19 UTC (permalink / raw)
To: qemu-block; +Cc: Kevin Wolf, qemu-devel, Max Reitz
null-aio may not be whitelisted. Skip all test cases that require it.
Signed-off-by: Max Reitz <mreitz@redhat.com>
---
tests/qemu-iotests/093 | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/tests/qemu-iotests/093 b/tests/qemu-iotests/093
index bd56c94708..806bdcaa24 100755
--- a/tests/qemu-iotests/093
+++ b/tests/qemu-iotests/093
@@ -22,9 +22,11 @@
import iotests
nsec_per_sec = 1000000000
+supported_null_drivers = [ f for f in iotests.supported_formats()
+ if f.startswith('null-') ]
class ThrottleTestCase(iotests.QMPTestCase):
- test_img = "null-aio://"
+ test_driver = "null-aio"
max_drives = 3
def blockstats(self, device):
@@ -36,9 +38,13 @@ class ThrottleTestCase(iotests.QMPTestCase):
raise Exception("Device not found for blockstats: %s" % device)
def setUp(self):
+ global supported_null_drivers
+ if self.test_driver not in supported_null_drivers:
+ self.case_skip('%s support missing' % self.test_driver)
+
self.vm = iotests.VM()
for i in range(0, self.max_drives):
- self.vm.add_drive(self.test_img)
+ self.vm.add_drive(self.test_driver + "://")
self.vm.launch()
def tearDown(self):
@@ -264,7 +270,7 @@ class ThrottleTestCase(iotests.QMPTestCase):
self.assertEqual(self.blockstats('drive1')[0], 4096)
class ThrottleTestCoroutine(ThrottleTestCase):
- test_img = "null-co://"
+ test_driver = "null-co"
class ThrottleTestGroupNames(iotests.QMPTestCase):
max_drives = 3
@@ -426,4 +432,6 @@ class ThrottleTestRemovableMedia(iotests.QMPTestCase):
if __name__ == '__main__':
+ if 'null-co' not in supported_null_drivers:
+ iotests.notrun('null-co driver support missing')
iotests.main(supported_fmts=["raw"])
--
2.21.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Qemu-devel] [PATCH v2 5/5] iotests: Test driver whitelisting in 136
2019-06-25 21:19 [Qemu-devel] [PATCH v2 0/5] iotests: Selfish patches Max Reitz
` (3 preceding siblings ...)
2019-06-25 21:19 ` [Qemu-devel] [PATCH v2 4/5] iotests: Test driver whitelisting in 093 Max Reitz
@ 2019-06-25 21:19 ` Max Reitz
4 siblings, 0 replies; 9+ messages in thread
From: Max Reitz @ 2019-06-25 21:19 UTC (permalink / raw)
To: qemu-block; +Cc: Kevin Wolf, qemu-devel, Max Reitz
null-aio may not be whitelisted. Skip all test cases that require it.
Signed-off-by: Max Reitz <mreitz@redhat.com>
---
tests/qemu-iotests/136 | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)
diff --git a/tests/qemu-iotests/136 b/tests/qemu-iotests/136
index af7ffa4540..4ef95517a1 100755
--- a/tests/qemu-iotests/136
+++ b/tests/qemu-iotests/136
@@ -28,9 +28,11 @@ op_latency = nsec_per_sec // 1000 # See qtest_latency_ns in accounting.c
bad_sector = 8192
bad_offset = bad_sector * 512
blkdebug_file = os.path.join(iotests.test_dir, 'blkdebug.conf')
+supported_null_drivers = [ f for f in iotests.supported_formats()
+ if f.startswith('null-') ]
class BlockDeviceStatsTestCase(iotests.QMPTestCase):
- test_img = "null-aio://"
+ test_driver = "null-aio"
total_rd_bytes = 0
total_rd_ops = 0
total_wr_bytes = 0
@@ -68,6 +70,10 @@ sector = "%d"
file.close()
def setUp(self):
+ global supported_null_drivers
+ if self.test_driver not in supported_null_drivers:
+ self.case_skip('%s support missing' % self.test_driver)
+
drive_args = []
drive_args.append("stats-intervals.0=%d" % interval_length)
drive_args.append("stats-account-invalid=%s" %
@@ -75,8 +81,8 @@ sector = "%d"
drive_args.append("stats-account-failed=%s" %
(self.account_failed and "on" or "off"))
self.create_blkdebug_file()
- self.vm = iotests.VM().add_drive('blkdebug:%s:%s' %
- (blkdebug_file, self.test_img),
+ self.vm = iotests.VM().add_drive('blkdebug:%s:%s://' %
+ (blkdebug_file, self.test_driver),
','.join(drive_args))
self.vm.launch()
# Set an initial value for the clock
@@ -336,7 +342,9 @@ class BlockDeviceStatsTestAccountBoth(BlockDeviceStatsTestCase):
account_failed = True
class BlockDeviceStatsTestCoroutine(BlockDeviceStatsTestCase):
- test_img = "null-co://"
+ test_driver = "null-co"
if __name__ == '__main__':
+ if 'null-co' not in supported_null_drivers:
+ iotests.notrun('null-co driver support missing')
iotests.main(supported_fmts=["raw"])
--
2.21.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [Qemu-devel] [PATCH v2 1/5] iotests: Add -display none to the qemu options
2019-06-25 21:19 ` [Qemu-devel] [PATCH v2 1/5] iotests: Add -display none to the qemu options Max Reitz
@ 2019-06-26 10:36 ` Philippe Mathieu-Daudé
0 siblings, 0 replies; 9+ messages in thread
From: Philippe Mathieu-Daudé @ 2019-06-26 10:36 UTC (permalink / raw)
To: Max Reitz, qemu-block; +Cc: Kevin Wolf, qemu-devel
On 6/25/19 11:19 PM, Max Reitz wrote:
> Without this argument, qemu will print an angry message about not being
> able to connect to a display server if $DISPLAY is not set. For me,
> that breaks iotests.supported_formats() because it thus only sees
> ["Could", "not", "connect"] as the supported formats.
>
> Signed-off-by: Max Reitz <mreitz@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> ---
> tests/qemu-iotests/check | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/tests/qemu-iotests/check b/tests/qemu-iotests/check
> index f925606cc5..f2a0df8af2 100755
> --- a/tests/qemu-iotests/check
> +++ b/tests/qemu-iotests/check
> @@ -581,13 +581,13 @@ export QEMU_PROG="$(type -p "$QEMU_PROG")"
>
> case "$QEMU_PROG" in
> *qemu-system-arm|*qemu-system-aarch64)
> - export QEMU_OPTIONS="-nodefaults -machine virt,accel=qtest"
> + export QEMU_OPTIONS="-nodefaults -display none -machine virt,accel=qtest"
> ;;
> *qemu-system-tricore)
> - export QEMU_OPTIONS="-nodefaults -machine tricore_testboard,accel=qtest"
> + export QEMU_OPTIONS="-nodefaults -display none -machine tricore_testboard,accel=qtest"
> ;;
> *)
> - export QEMU_OPTIONS="-nodefaults -machine accel=qtest"
> + export QEMU_OPTIONS="-nodefaults -display none -machine accel=qtest"
> ;;
> esac
>
>
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Qemu-devel] [Qemu-block] [PATCH v2 2/5] iotests: Prefer null-co over null-aio
2019-06-25 21:19 ` [Qemu-devel] [PATCH v2 2/5] iotests: Prefer null-co over null-aio Max Reitz
@ 2019-08-12 18:59 ` John Snow
0 siblings, 0 replies; 9+ messages in thread
From: John Snow @ 2019-08-12 18:59 UTC (permalink / raw)
To: Max Reitz, qemu-block; +Cc: Kevin Wolf, qemu-devel
On 6/25/19 5:19 PM, Max Reitz wrote:
> We use null-co basically everywhere in the iotests. Unless we want to
> test null-aio specifically, we should use it instead (for consistency).
>
> Signed-off-by: Max Reitz <mreitz@redhat.com>
Probably fine.
Reviewed-by: John Snow <jsnow@redhat.com>
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Qemu-devel] [Qemu-block] [PATCH v2 3/5] iotests: Allow skipping test cases
2019-06-25 21:19 ` [Qemu-devel] [PATCH v2 3/5] iotests: Allow skipping test cases Max Reitz
@ 2019-08-12 19:00 ` John Snow
0 siblings, 0 replies; 9+ messages in thread
From: John Snow @ 2019-08-12 19:00 UTC (permalink / raw)
To: Max Reitz, qemu-block; +Cc: Kevin Wolf, qemu-devel, Cleber Rosa
On 6/25/19 5:19 PM, Max Reitz wrote:
> case_notrun() does not actually skip the current test case. It just
> adds a "notrun" note and then returns to the caller, who manually has to
> skip the test. Generally, skipping a test case is as simple as
> returning from the current function, but not always: For example, this
> model does not allow skipping tests already in the setUp() function.
>
> Thus, add a QMPTestCase.case_skip() function that invokes case_notrun()
> and then self.skipTest(). To make this work, we need to filter the
> information on how many test cases were skipped from the unittest
> output.
>
I feel like skipping sub-tests has been a point of contention before,
but I don't recall the outcome.
Cleber, can you help jog my memory?
> Signed-off-by: Max Reitz <mreitz@redhat.com>
> ---
> tests/qemu-iotests/iotests.py | 20 ++++++++++++++++++--
> 1 file changed, 18 insertions(+), 2 deletions(-)
>
> diff --git a/tests/qemu-iotests/iotests.py b/tests/qemu-iotests/iotests.py
> index 3ecef5bc90..1b0ac50153 100644
> --- a/tests/qemu-iotests/iotests.py
> +++ b/tests/qemu-iotests/iotests.py
> @@ -741,6 +741,11 @@ class QMPTestCase(unittest.TestCase):
> return self.pause_wait(job_id)
> return result
>
> + def case_skip(self, reason):
> + '''Skip this test case'''
> + case_notrun(reason)
> + self.skipTest(reason)
> +
>
> def notrun(reason):
> '''Skip this test suite'''
> @@ -752,7 +757,10 @@ def notrun(reason):
> sys.exit(0)
>
> def case_notrun(reason):
> - '''Skip this test case'''
> + '''Mark this test case as not having been run, but do not actually
> + skip it; that is left to the caller. See QMPTestCase.case_skip()
> + for a variant that actually skips the current test case.'''
> +
> # Each test in qemu-iotests has a number ("seq")
> seq = os.path.basename(sys.argv[0])
>
> @@ -879,4 +887,12 @@ def main(supported_fmts=[], supported_oses=['linux'], supported_cache_modes=[],
> unittest.main(testRunner=MyTestRunner)
> finally:
> if not debug:
> - sys.stderr.write(re.sub(r'Ran (\d+) tests? in [\d.]+s', r'Ran \1 tests', output.getvalue()))
> + out = output.getvalue()
> + out = re.sub(r'Ran (\d+) tests? in [\d.]+s', r'Ran \1 tests', out)
> +
> + # Hide skipped tests from the reference output
> + out = re.sub(r'OK \(skipped=\d+\)', 'OK', out)
> + out_first_line, out_rest = out.split('\n', 1)
> + out = out_first_line.replace('s', '.') + '\n' + out_rest
> +
> + sys.stderr.write(out)
>
--
—js
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2019-08-12 19:01 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-25 21:19 [Qemu-devel] [PATCH v2 0/5] iotests: Selfish patches Max Reitz
2019-06-25 21:19 ` [Qemu-devel] [PATCH v2 1/5] iotests: Add -display none to the qemu options Max Reitz
2019-06-26 10:36 ` Philippe Mathieu-Daudé
2019-06-25 21:19 ` [Qemu-devel] [PATCH v2 2/5] iotests: Prefer null-co over null-aio Max Reitz
2019-08-12 18:59 ` [Qemu-devel] [Qemu-block] " John Snow
2019-06-25 21:19 ` [Qemu-devel] [PATCH v2 3/5] iotests: Allow skipping test cases Max Reitz
2019-08-12 19:00 ` [Qemu-devel] [Qemu-block] " John Snow
2019-06-25 21:19 ` [Qemu-devel] [PATCH v2 4/5] iotests: Test driver whitelisting in 093 Max Reitz
2019-06-25 21:19 ` [Qemu-devel] [PATCH v2 5/5] iotests: Test driver whitelisting in 136 Max Reitz
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).