On Mon, Jun 26, 2017 at 07:23:50AM -0600, Eric Blake wrote:
On 06/17/2017 09:15 PM, Eduardo Habkost wrote:
> (CCing qemu-devel and the QAPI maintainers. I have a question
> about introspection below.)
>
>
> Fortunately, netdev options are modelled in the QAPI schema as
> union Netdev. However, 'query-qmp-schema' doesn't seem to
> include union Netdev because it is not referenced by any QMP
> command or event.
I've posted patches in the past (qemu 2.6 timeframe, if I recall) that
changed netdev_add into a fully-advertised interface, but we didn't take
it then because we weren't sure how to handle the fact that netdev_add
can currently accept both an integer (1) and a string ("1") as
identical, and we didn't want to risk breaking clients that passed a
string when the promoted command would only accept integers. I guess we
should revive that.
>
> Markus, Eric, Michael: is there any way libvirt can query the
> definition of union Netdev from the schema with current QEMU?
Really, we need to promote netdev_add to a full-fledged QMP command.
This may be enough for -netdev, but do we want to make command-line
option introspection always depend on having the same struct being used
in a QMP command to work? What if the arguments for the command-line
option don't match precisely the input of a QMP command?
--
Eduardo