qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[RFC PATCH 00/12] Remove QemuOpts usage for HMP, -object and -readconfig


From: Paolo Bonzini
Subject: [RFC PATCH 00/12] Remove QemuOpts usage for HMP, -object and -readconfig
Date: Wed, 11 Nov 2020 09:25:25 -0500

This is yet another RFC on the command-line parsing overhaul.  Here,
I'm switching HMP, -object and -readconfig away from QemuOpts.  There are
pending QemuOpts and keyval patches that make the syntaxes the same
apart from:

- "implicit value" options (where the lack of value is turned
into "on" or "off"), which will be deprecated

- the processing of invalid, empty or overlong keys which can be considered
bugfixes.

Along the way, the object_add HMP command grows help support.

The plan on top of this is to also keyval-ify -M and -accel.  The reason
for this, in my evil plan, is to allow for compound properties.  These
compound properties would be used for replacements of options like -smp
(-M smp.xxx), -icount (-accel tcg,icount.xxx) and -chardev (as in -object
chardev-socket,addr.host).

Paolo

Paolo Bonzini (12):
  tests: convert check-qom-proplist to keyval
  keyval: introduce keyval_parse_into
  hmp: replace "O" parser with keyval
  qom: use qemu_printf to print help for user-creatable objects
  hmp: special case help options for object_add
  qemu-io: use keyval for -object parsing
  qemu-nbd: use keyval for -object parsing
  qemu-img: use keyval for -object parsing
  qemu-config: add error propagation to qemu_config_parse
  qemu-config: parse configuration files to a QDict
  qemu-option: support accept-any QemuOptsList in qemu_opts_absorb_qdict
  qemu: use keyval for -object parsing

 block/blkdebug.c                |   3 +-
 hmp-commands.hx                 |   6 +-
 include/qemu/config-file.h      |   8 +-
 include/qemu/option.h           |   2 +
 include/qom/object_interfaces.h |  45 +-----
 monitor/hmp-cmds.c              |  22 +--
 monitor/hmp.c                   |  20 ++-
 qemu-img.c                      | 258 +++++++-------------------------
 qemu-io.c                       |  42 ++----
 qemu-nbd.c                      |  42 ++----
 qom/object_interfaces.c         |  57 +------
 softmmu/vl.c                    | 113 ++++++++------
 tests/check-qom-proplist.c      |  58 ++++---
 util/keyval.c                   |  39 ++++-
 util/qemu-config.c              |  99 +++++++-----
 util/qemu-option.c              |   3 +-
 16 files changed, 324 insertions(+), 493 deletions(-)

-- 
2.26.2




reply via email to

[Prev in Thread] Current Thread [Next in Thread]