]> git.proxmox.com Git - mirror_qemu.git/commit - hw/block/xen-block.c
qapi/qom: QAPIfy object-add
authorKevin Wolf <kwolf@redhat.com>
Tue, 20 Oct 2020 11:27:22 +0000 (13:27 +0200)
committerKevin Wolf <kwolf@redhat.com>
Fri, 19 Mar 2021 09:17:14 +0000 (10:17 +0100)
commit9151e59a8b6e854eb733553c6772351049ca6ab6
tree7732e240fff253f03be6ad9bb9239d37a04b456f
parent17422da082ffcecb38bd1f2e2de6d56a61e8cd9c
qapi/qom: QAPIfy object-add

This converts object-add from 'gen': false to the ObjectOptions QAPI
type. As an immediate benefit, clients can now use QAPI schema
introspection for user creatable QOM objects.

It is also the first step towards making the QAPI schema the only
external interface for the creation of user creatable objects. Once all
other places (HMP and command lines of the system emulator and all
tools) go through QAPI, too, some object implementations can be
simplified because some checks (e.g. that mandatory options are set) are
already performed by QAPI, and in another step, QOM boilerplate code
could be generated from the schema.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
Acked-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
hw/block/xen-block.c
include/qom/object_interfaces.h
monitor/misc.c
qapi/qom.json
qom/qom-qmp-cmds.c
storage-daemon/qemu-storage-daemon.c