[Qemu-devel] [PATCH] iotests: Make 182 do without device_add

Max Reitz posted 1 patch 5 years ago
Test docker-mingw@fedora passed
Test docker-clang@ubuntu passed
Test checkpatch passed
Test asan passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20190417153005.30096-1-mreitz@redhat.com
Maintainers: Kevin Wolf <kwolf@redhat.com>, Max Reitz <mreitz@redhat.com>
tests/qemu-iotests/182     | 22 +++++++++++++++++-----
tests/qemu-iotests/182.out |  1 +
2 files changed, 18 insertions(+), 5 deletions(-)
[Qemu-devel] [PATCH] iotests: Make 182 do without device_add
Posted by Max Reitz 5 years ago
182 fails if qemu has no support for hotplugging of a virtio-blk device.
Using an NBD server instead works just as well for the test, even on
qemus without hotplugging support.

Fixes: 6d0a4a0fb5c8f10c8eb68b52cfda0082b00ae963
Reported-by: Danilo C. L. de Paula <ddepaula@redhat.com>
Signed-off-by: Max Reitz <mreitz@redhat.com>
---
To reintroduce the bug for which this test was written, revert the
following commits:

$ git revert -n \
    23dece19da41724349809873923e20a48b619cb7 \
    6ceabe6f77e4ae5ac2fa3d2ac1be11dc95021941 \
    a6aeca0ca530f104b5a5dd6704fca22b2c5edefa \
    577a133988c76e4ebf01d050d0d758d207a1baf7
---
 tests/qemu-iotests/182     | 22 +++++++++++++++++-----
 tests/qemu-iotests/182.out |  1 +
 2 files changed, 18 insertions(+), 5 deletions(-)

diff --git a/tests/qemu-iotests/182 b/tests/qemu-iotests/182
index ff3d7e7ec1..38959bf276 100755
--- a/tests/qemu-iotests/182
+++ b/tests/qemu-iotests/182
@@ -31,6 +31,7 @@ _cleanup()
 {
     _cleanup_test_img
     rm -f "$TEST_IMG.overlay"
+    rm -f "$TEST_DIR/nbd.socket"
 }
 trap "_cleanup; exit \$status" 0 1 2 3 15
 
@@ -126,15 +127,26 @@ success_or_failure=y _send_qemu_cmd $QEMU_HANDLE \
     'return' \
     'error'
 
-# Now we attach the image to a virtio-blk device.  This device does
-# require some permissions (at least WRITE and READ_CONSISTENT), so if
+# Start an NBD server to which we can attach node1
+success_or_failure=y _send_qemu_cmd $QEMU_HANDLE \
+    "{'execute': 'nbd-server-start',
+      'arguments': {
+          'addr': {
+              'type': 'unix',
+              'data': {
+                  'path': '$TEST_DIR/nbd.socket'
+              } } } }" \
+    'return' \
+    'error'
+
+# Now we attach the image to the NBD server.  This server does require
+# some permissions (at least WRITE and READ_CONSISTENT), so if
 # reopening node0 unshared any (which it should not have), this will
 # fail (but it should not).
 success_or_failure=y _send_qemu_cmd $QEMU_HANDLE \
-    "{'execute': 'device_add',
+    "{'execute': 'nbd-server-add',
       'arguments': {
-          'driver': 'virtio-blk',
-          'drive': 'node1'
+          'device': 'node1'
       } }" \
     'return' \
     'error'
diff --git a/tests/qemu-iotests/182.out b/tests/qemu-iotests/182.out
index af501ca3f3..33d41eea91 100644
--- a/tests/qemu-iotests/182.out
+++ b/tests/qemu-iotests/182.out
@@ -14,4 +14,5 @@ Formatting 'TEST_DIR/t.qcow2.overlay', fmt=qcow2 size=197120 backing_file=TEST_D
 {"return": {}}
 {"return": {}}
 {"return": {}}
+{"return": {}}
 *** done
-- 
2.20.1


Re: [Qemu-devel] [PATCH] iotests: Make 182 do without device_add
Posted by Eric Blake 5 years ago
On 4/17/19 10:30 AM, Max Reitz wrote:
> 182 fails if qemu has no support for hotplugging of a virtio-blk device.
> Using an NBD server instead works just as well for the test, even on
> qemus without hotplugging support.
> 
> Fixes: 6d0a4a0fb5c8f10c8eb68b52cfda0082b00ae963
> Reported-by: Danilo C. L. de Paula <ddepaula@redhat.com>
> Signed-off-by: Max Reitz <mreitz@redhat.com>
> ---
> To reintroduce the bug for which this test was written, revert the
> following commits:
> 
> $ git revert -n \
>     23dece19da41724349809873923e20a48b619cb7 \
>     6ceabe6f77e4ae5ac2fa3d2ac1be11dc95021941 \
>     a6aeca0ca530f104b5a5dd6704fca22b2c5edefa \
>     577a133988c76e4ebf01d050d0d758d207a1baf7

Useful instructions; with them, I was able to:

Tested-by: Eric Blake <eblake@redhat.com>

> ---
>  tests/qemu-iotests/182     | 22 +++++++++++++++++-----
>  tests/qemu-iotests/182.out |  1 +
>  2 files changed, 18 insertions(+), 5 deletions(-)

Reviewed-by: Eric Blake <eblake@redhat.com>

Do you want me to take this through my NBD tree, since it now depends on
NBD? I'm also fine letting it go through your iotests tree

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3226
Virtualization:  qemu.org | libvirt.org

Re: [Qemu-devel] [PATCH] iotests: Make 182 do without device_add
Posted by Alberto Garcia 4 years, 12 months ago
On Wed 17 Apr 2019 05:30:05 PM CEST, Max Reitz wrote:
> 182 fails if qemu has no support for hotplugging of a virtio-blk device.
> Using an NBD server instead works just as well for the test, even on
> qemus without hotplugging support.
>
> Fixes: 6d0a4a0fb5c8f10c8eb68b52cfda0082b00ae963
> Reported-by: Danilo C. L. de Paula <ddepaula@redhat.com>
> Signed-off-by: Max Reitz <mreitz@redhat.com>

Acked-by: Alberto Garcia <berto@igalia.com>

Berto

Re: [Qemu-devel] [PATCH] iotests: Make 182 do without device_add
Posted by Max Reitz 4 years, 11 months ago
On 17.04.19 17:30, Max Reitz wrote:
> 182 fails if qemu has no support for hotplugging of a virtio-blk device.
> Using an NBD server instead works just as well for the test, even on
> qemus without hotplugging support.
> 
> Fixes: 6d0a4a0fb5c8f10c8eb68b52cfda0082b00ae963
> Reported-by: Danilo C. L. de Paula <ddepaula@redhat.com>
> Signed-off-by: Max Reitz <mreitz@redhat.com>
> ---
> To reintroduce the bug for which this test was written, revert the
> following commits:
> 
> $ git revert -n \
>     23dece19da41724349809873923e20a48b619cb7 \
>     6ceabe6f77e4ae5ac2fa3d2ac1be11dc95021941 \
>     a6aeca0ca530f104b5a5dd6704fca22b2c5edefa \
>     577a133988c76e4ebf01d050d0d758d207a1baf7
> ---
>  tests/qemu-iotests/182     | 22 +++++++++++++++++-----
>  tests/qemu-iotests/182.out |  1 +
>  2 files changed, 18 insertions(+), 5 deletions(-)

Thanks for the reviews, applied to my block branch.

Max

Re: [Qemu-devel] [PATCH] iotests: Make 182 do without device_add
Posted by Eric Blake 4 years, 11 months ago
On 5/7/19 8:21 AM, Max Reitz wrote:
> On 17.04.19 17:30, Max Reitz wrote:
>> 182 fails if qemu has no support for hotplugging of a virtio-blk device.
>> Using an NBD server instead works just as well for the test, even on
>> qemus without hotplugging support.
>>
>> Fixes: 6d0a4a0fb5c8f10c8eb68b52cfda0082b00ae963
>> Reported-by: Danilo C. L. de Paula <ddepaula@redhat.com>
>> Signed-off-by: Max Reitz <mreitz@redhat.com>
>> ---
>> To reintroduce the bug for which this test was written, revert the
>> following commits:
>>
>> $ git revert -n \
>>     23dece19da41724349809873923e20a48b619cb7 \
>>     6ceabe6f77e4ae5ac2fa3d2ac1be11dc95021941 \
>>     a6aeca0ca530f104b5a5dd6704fca22b2c5edefa \
>>     577a133988c76e4ebf01d050d0d758d207a1baf7
>> ---
>>  tests/qemu-iotests/182     | 22 +++++++++++++++++-----
>>  tests/qemu-iotests/182.out |  1 +
>>  2 files changed, 18 insertions(+), 5 deletions(-)
> 
> Thanks for the reviews, applied to my block branch.

Hmm, just seeing this after I already sent a pull request doing the same
through NBD. Git should handle things correctly, whether or not you
rebase to drop patches from your block branch that get in through my NBD
pull request.

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3226
Virtualization:  qemu.org | libvirt.org