[PATCH v2 0/3] vl: add -object support back into -readconfig

Paolo Bonzini posted 3 patches 2 years, 11 months ago
Failed in applying to current master (apply log)
There is a newer version of this series
include/block/qdict.h      |   2 -
include/qapi/qmp/qdict.h   |   3 ++
include/qemu/config-file.h |   7 ++-
softmmu/vl.c               | 105 +++++++++++++++++++++++++++----------
util/qemu-config.c         |  98 +++++++++++++++++++++++-----------
5 files changed, 153 insertions(+), 62 deletions(-)
[PATCH v2 0/3] vl: add -object support back into -readconfig
Posted by Paolo Bonzini 2 years, 11 months ago
LXD developers have reported that [object] stanzas have stopped
working in configuration files.

The problem is that QEMU 6.0 switched the creation of objects from
qemu_opts_foreach to a bespoke QTAILQ, in preparation for supporting
JSON syntax in -object.  Entries from the configuration file however
do not go through object_option_parse, and are thus lost.  Of the many
fixes that are possible, I chose one that is slightly more invasive but
more consistent with the plans for keyval-ification of options such as
-M and -accel.

-set was also broken by the same change.  For simplicity I chose
not to add it back yet, however this series will report the
breakage instead of failing silently.

The first two patches of this series are thus a reduced version of
https://patchew.org/QEMU/20210513162901.1310239-1-pbonzini@redhat.com/
([PATCH 00/14] vl: compound properties for machines and accelerators),
with the -set infrastructure removed.  The third is very simple and
uses the newly-provided hooks to parse objects from configuration files.

Paolo Bonzini (3):
  qemu-config: parse configuration files to a QDict
  vl: plumb keyval-based options into -readconfig
  vl: plug -object back into -readconfig

 include/block/qdict.h      |   2 -
 include/qapi/qmp/qdict.h   |   3 ++
 include/qemu/config-file.h |   7 ++-
 softmmu/vl.c               | 105 +++++++++++++++++++++++++++----------
 util/qemu-config.c         |  98 +++++++++++++++++++++++-----------
 5 files changed, 153 insertions(+), 62 deletions(-)

-- 
2.27.0