Re: [Qemu-devel] [PATCH v2] block: Remove "options" indirection from blockdev-add

2016-10-11 Thread Markus Armbruster
Kevin Wolf  writes:

> Now that QAPI supports boxed types, we can have unions at the top level
> of a command, so let's put our real options directly there for
> blockdev-add instead of having a single "options" dict that contains the
> real arguments.
>
> blockdev-add is still experimental and we already made substantial
> changes to the API recently, so we're free to make changes like this
> one, too.
>
> Signed-off-by: Kevin Wolf 

Glad to see the QAPI work enable a nicer interface.

With docs/qmp-commands.txt touched up as per Max's review:
Reviewed-by: Markus Armbruster 



Re: [Qemu-devel] [PATCH v2] block: Remove "options" indirection from blockdev-add

2016-10-10 Thread Eric Blake
On 10/10/2016 08:41 AM, Kevin Wolf wrote:
> Now that QAPI supports boxed types, we can have unions at the top level
> of a command, so let's put our real options directly there for
> blockdev-add instead of having a single "options" dict that contains the
> real arguments.
> 
> blockdev-add is still experimental and we already made substantial
> changes to the API recently, so we're free to make changes like this
> one, too.
> 
> Signed-off-by: Kevin Wolf 
> ---
> 
> v2:
> - Updated some documentation in docs/qmp-commands.txt and
>   qapi/block-core.json [Max]

Reviewed-by: Eric Blake 

-- 
Eric Blake   eblake redhat com+1-919-301-3266
Libvirt virtualization library http://libvirt.org



signature.asc
Description: OpenPGP digital signature


Re: [Qemu-devel] [PATCH v2] block: Remove "options" indirection from blockdev-add

2016-10-10 Thread Max Reitz
On 10.10.2016 15:41, Kevin Wolf wrote:
> Now that QAPI supports boxed types, we can have unions at the top level
> of a command, so let's put our real options directly there for
> blockdev-add instead of having a single "options" dict that contains the
> real arguments.
> 
> blockdev-add is still experimental and we already made substantial
> changes to the API recently, so we're free to make changes like this
> one, too.
> 
> Signed-off-by: Kevin Wolf 
> ---
> 
> v2:
> - Updated some documentation in docs/qmp-commands.txt and
>   qapi/block-core.json [Max]

In qmp-commands.txt, there is still a blockdev-add example with
"options" under x-blockdev-change, and the blockdev-add documentation
itself still says that blockdev-add takes an argument named "options".

Max

>  docs/qmp-commands.txt  |  72 ++
>  qapi/block-core.json   |   4 +-
>  tests/qemu-iotests/041 |  11 +++--
>  tests/qemu-iotests/067 |  12 +++--
>  tests/qemu-iotests/071 | 118 
> +
>  tests/qemu-iotests/081 |  52 ++
>  tests/qemu-iotests/085 |   9 ++--
>  tests/qemu-iotests/087 |  76 +--
>  tests/qemu-iotests/117 |  12 ++---
>  tests/qemu-iotests/118 |  42 +-
>  tests/qemu-iotests/124 |  20 -
>  tests/qemu-iotests/139 |  10 ++---
>  tests/qemu-iotests/141 |  13 +++---
>  tests/qemu-iotests/155 |  10 ++---
>  14 files changed, 209 insertions(+), 252 deletions(-)




signature.asc
Description: OpenPGP digital signature


[Qemu-devel] [PATCH v2] block: Remove "options" indirection from blockdev-add

2016-10-10 Thread Kevin Wolf
Now that QAPI supports boxed types, we can have unions at the top level
of a command, so let's put our real options directly there for
blockdev-add instead of having a single "options" dict that contains the
real arguments.

blockdev-add is still experimental and we already made substantial
changes to the API recently, so we're free to make changes like this
one, too.

Signed-off-by: Kevin Wolf 
---

v2:
- Updated some documentation in docs/qmp-commands.txt and
  qapi/block-core.json [Max]

 docs/qmp-commands.txt  |  72 ++
 qapi/block-core.json   |   4 +-
 tests/qemu-iotests/041 |  11 +++--
 tests/qemu-iotests/067 |  12 +++--
 tests/qemu-iotests/071 | 118 +
 tests/qemu-iotests/081 |  52 ++
 tests/qemu-iotests/085 |   9 ++--
 tests/qemu-iotests/087 |  76 +--
 tests/qemu-iotests/117 |  12 ++---
 tests/qemu-iotests/118 |  42 +-
 tests/qemu-iotests/124 |  20 -
 tests/qemu-iotests/139 |  10 ++---
 tests/qemu-iotests/141 |  13 +++---
 tests/qemu-iotests/155 |  10 ++---
 14 files changed, 209 insertions(+), 252 deletions(-)

diff --git a/docs/qmp-commands.txt b/docs/qmp-commands.txt
index e044029..a033e50 100644
--- a/docs/qmp-commands.txt
+++ b/docs/qmp-commands.txt
@@ -1090,11 +1090,11 @@ Arguments:
 Example:
 
 -> { "execute": "blockdev-add",
-"arguments": { "options": { "driver": "qcow2",
-"node-name": "node1534",
-"file": { "driver": "file",
-  "filename": "hd1.qcow2" 
},
-"backing": "" } } }
+"arguments": { "driver": "qcow2",
+   "node-name": "node1534",
+   "file": { "driver": "file",
+ "filename": "hd1.qcow2" },
+   "backing": "" } }
 
 <- { "return": {} }
 
@@ -3130,34 +3130,32 @@ Arguments:
 Example (1):
 
 -> { "execute": "blockdev-add",
-"arguments": { "options" : { "driver": "qcow2",
- "file": { "driver": "file",
-   "filename": "test.qcow2" } } } }
+"arguments": { "driver": "qcow2",
+   "file": { "driver": "file",
+ "filename": "test.qcow2" } } }
 <- { "return": {} }
 
 Example (2):
 
 -> { "execute": "blockdev-add",
  "arguments": {
- "options": {
-   "driver": "qcow2",
-   "node-name": "my_disk",
-   "discard": "unmap",
-   "cache": {
-   "direct": true,
-   "writeback": true
-   },
-   "file": {
-   "driver": "file",
-   "filename": "/tmp/test.qcow2"
-   },
-   "backing": {
-   "driver": "raw",
-   "file": {
-   "driver": "file",
-   "filename": "/dev/fdset/4"
-   }
-   }
+ "driver": "qcow2",
+ "node-name": "my_disk",
+ "discard": "unmap",
+ "cache": {
+ "direct": true,
+ "writeback": true
+ },
+ "file": {
+ "driver": "file",
+ "filename": "/tmp/test.qcow2"
+ },
+ "backing": {
+ "driver": "raw",
+ "file": {
+ "driver": "file",
+ "filename": "/dev/fdset/4"
+ }
  }
}
  }
@@ -3184,13 +3182,11 @@ Example:
 
 -> { "execute": "blockdev-add",
  "arguments": {
- "options": {
- "driver": "qcow2",
- "node-name": "node0",
- "file": {
- "driver": "file",
- "filename": "test.qcow2"
- }
+ "driver": "qcow2",
+ "node-name": "node0",
+ "file": {
+ "driver": "file",
+ "filename": "test.qcow2"
  }
  }
}
@@ -3335,10 +3331,10 @@ Arguments:
 Example:
 
 -> { "execute": "blockdev-add",
- "arguments": { "options": { "node-name": "node0",
- "driver": "raw",
- "file": { "driver": "file",
-   "filename": "fedora.iso" } } } }
+ "arguments": { { "node-name": "node0",
+  "driver": "raw",
+  "file": { "driver": "file",
+"filename": "fedora.iso" } } }
 
 <- { "return": {} }
 
diff --git a/qapi/block-core.json b/qapi/block-core.json
index 3d3c0be..589fe89 100644
--- a/qapi/block-core.json
+++ b/qapi/block-core.json
@@ -2317,11 +2317,11 @@
 # block drivers among other things.  Stay away from it unless you want
 # to help with its development.
 #
-# @options: block device options for