[libvirt] [PATCH v5 2/2] query-command-line-options: query all the options in qemu-options.hx

Eric Blake eblake at redhat.com
Wed Mar 12 00:46:10 UTC 2014


On 03/06/2014 11:09 PM, Amos Kong wrote:
> vm_config_groups[] only contains part of the options which have
> parameters, and all options which have no parameter aren't added
> to vm_config_groups[]. Current query-command-line-options only
> checks options from vm_config_groups[], so some options will
> be lost.
> 
> We have macro in qemu-options.hx to generate a table that
> contains all the options. This patch tries to query options
> from the table.
> 
> Then we won't lose the legacy options that weren't added to
> vm_config_groups[] (eg: -vnc, -smbios). The options that have
> no parameter will also be returned (eg: -enable-fips)
> 
> Some options that have parameters have a NULL desc list, some
> options don't have parameters, and "parameters" is mandatory
> in the past. So we add a new field "unspecified-parameters" to
> present if the option takes unspecified parameters.
> 
> This patch also fixes options to match their actual command-line
> spelling rather than an alternate name associated with the
> option table in use by the command.
> 
> Signed-off-by: Amos Kong <akong at redhat.com>
> ---
>  qapi-schema.json   |  9 +++++++--
>  qemu-options.h     | 12 ++++++++++++
>  util/qemu-config.c | 43 ++++++++++++++++++++++++++++++++++++-------
>  vl.c               | 19 ++-----------------
>  4 files changed, 57 insertions(+), 26 deletions(-)

Based on the thread on v4, it sounds like this design is still not
finalized, and won't make 2.0.  It sounds like once we start exposing
all options, it would also be nice to show which options are sugar for
other spellings.

> 
> diff --git a/qapi-schema.json b/qapi-schema.json
> index 193e7e4..fb7ca1b 100644
> --- a/qapi-schema.json
> +++ b/qapi-schema.json
> @@ -4070,12 +4070,17 @@
>  #
>  # @option: option name
>  #
> -# @parameters: an array of @CommandLineParameterInfo
> +# @parameters: array of @CommandLineParameterInfo, possibly empty
> +# @unspecified-parameters: @optional present if the @parameters array is empty.

Blank lines between the two parameters, for consistency.

> +#                          If true, then the option takes unspecified
> +#                          parameters, if false, then the option takes no
> +#                          parameter (since 2.0)

So this will need to be changed to '(since 2.1)'.

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

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 604 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20140311/74a0d9d2/attachment-0001.sig>


More information about the libvir-list mailing list