[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v8 23/26] qapi-schema: Fix up misleading specificati
From: |
Markus Armbruster |
Subject: |
[Qemu-devel] [PATCH v8 23/26] qapi-schema: Fix up misleading specification of netdev_add |
Date: |
Wed, 16 Sep 2015 13:06:26 +0200 |
It doesn't take a 'props' argument, let alone one in the format
"NAME=VALUE,..."
The bogus arguments specification doesn't matter due to 'gen': false.
Clean it up to be incomplete rather than wrong, and document the
incompleteness.
While there, improve netdev_add usage example in the manual: add a
device option to show how it's done.
Signed-off-by: Markus Armbruster <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Daniel P. Berrange <address@hidden>
---
docs/qapi-code-gen.txt | 2 +-
qapi-schema.json | 13 +++++++------
qmp-commands.hx | 4 +++-
3 files changed, 11 insertions(+), 8 deletions(-)
diff --git a/docs/qapi-code-gen.txt b/docs/qapi-code-gen.txt
index 70fdae7..4e331a0 100644
--- a/docs/qapi-code-gen.txt
+++ b/docs/qapi-code-gen.txt
@@ -471,7 +471,7 @@ try to avoid adding new commands that rely on this, and
instead use
type-safe unions. For an example of bypass usage:
{ 'command': 'netdev_add',
- 'data': {'type': 'str', 'id': 'str', '*props': '**'},
+ 'data': {'type': 'str', 'id': 'str'},
'gen': false }
Normally, the QAPI schema is used to describe synchronous exchanges,
diff --git a/qapi-schema.json b/qapi-schema.json
index 756ed9e..3ff9fec 100644
--- a/qapi-schema.json
+++ b/qapi-schema.json
@@ -2079,11 +2079,12 @@
#
# @id: the name of the new network backend
#
-# @props: #optional a list of properties to be passed to the backend in
-# the format 'name=value', like 'ifname=tap0,script=no'
+# Additional arguments depend on the type.
#
-# Notes: The semantics of @props is not well defined. Future commands will be
-# introduced that provide stronger typing for backend creation.
+# TODO This command effectively bypasses QAPI completely due to its
+# "additional arguments" business. It shouldn't have been added to
+# the schema in this form. It should be qapified properly, or
+# replaced by a properly qapified command.
#
# Since: 0.14.0
#
@@ -2091,8 +2092,8 @@
# If @type is not a valid network backend, DeviceNotFound
##
{ 'command': 'netdev_add',
- 'data': {'type': 'str', 'id': 'str', '*props': '**'},
- 'gen': false }
+ 'data': {'type': 'str', 'id': 'str'},
+ 'gen': false } # so we can get the additional arguments
##
# @netdev_del:
diff --git a/qmp-commands.hx b/qmp-commands.hx
index 7c74e20..5a54406 100644
--- a/qmp-commands.hx
+++ b/qmp-commands.hx
@@ -917,7 +917,9 @@ Arguments:
Example:
--> { "execute": "netdev_add", "arguments": { "type": "user", "id": "netdev1" }
}
+-> { "execute": "netdev_add",
+ "arguments": { "type": "user", "id": "netdev1",
+ "dnssearch": "example.org" } }
<- { "return": {} }
Note: The supported device options are the same ones supported by the '-netdev'
--
2.4.3
- [Qemu-devel] [PATCH v8 15/26] qapi-commands: Rearrange code, (continued)
- [Qemu-devel] [PATCH v8 15/26] qapi-commands: Rearrange code, Markus Armbruster, 2015/09/16
- [Qemu-devel] [PATCH v8 13/26] qapi: Clean up after recent conversions to QAPISchemaVisitor, Markus Armbruster, 2015/09/16
- [Qemu-devel] [PATCH v8 24/26] qapi: Pseudo-type '**' is now unused, drop it, Markus Armbruster, 2015/09/16
- [Qemu-devel] [PATCH v8 26/26] qapi-introspect: Hide type names, Markus Armbruster, 2015/09/16
- [Qemu-devel] [PATCH v8 21/26] qapi: Introduce a first class 'any' type, Markus Armbruster, 2015/09/16
- [Qemu-devel] [PATCH v8 19/26] qapi: Improve built-in type documentation, Markus Armbruster, 2015/09/16
- [Qemu-devel] [PATCH v8 11/26] qapi-event: Convert to QAPISchemaVisitor, fixing data with base, Markus Armbruster, 2015/09/16
- [Qemu-devel] [PATCH v8 23/26] qapi-schema: Fix up misleading specification of netdev_add,
Markus Armbruster <=
- [Qemu-devel] [PATCH v8 25/26] qapi: New QMP command query-qmp-schema for QMP introspection, Markus Armbruster, 2015/09/16
- [Qemu-devel] [PATCH v8 16/26] qapi: Rename qmp_marshal_input_FOO() to qmp_marshal_FOO(), Markus Armbruster, 2015/09/16
- Re: [Qemu-devel] [PATCH v8 00/26] qapi: QMP introspection, Daniel P. Berrange, 2015/09/16
- Re: [Qemu-devel] [PATCH v8 00/26] qapi: QMP introspection, Markus Armbruster, 2015/09/17