qapi: introduce new cmd option "allow-preconfig"
commitd6fe3d02e9a2ce7b63a0723d0b71f3013f59d705
authorIgor Mammedov <imammedo@redhat.com>
Fri, 11 May 2018 16:51:43 +0000 (11 18:51 +0200)
committerEduardo Habkost <ehabkost@redhat.com>
Wed, 30 May 2018 16:19:09 +0000 (30 13:19 -0300)
tree666ee709e22f10e1837b25463ebe0e6c213ddf75
parent71dc578e116599ea73c8a2a4e693134702ec0e83
qapi: introduce new cmd option "allow-preconfig"

New option will be used to allow commands, which are prepared/need
to run, during preconfig state. Other commands that should be able
to run in preconfig state, should be amended to not expect machine
in initialized state or deal with it.

For compatibility reasons, commands that don't use new flag
'allow-preconfig' explicitly are not permitted to run in
preconfig state but allowed in all other states like they used
to be.

Within this patch allow following commands in preconfig state:
   qmp_capabilities
   query-qmp-schema
   query-commands
   query-command-line-options
   query-status
   exit-preconfig
to allow qmp connection, basic introspection and moving to the next
state.

PS:
set-numa-node and query-hotpluggable-cpus will be enabled later in
a separate patches.

Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Message-Id: <1526057503-39287-1-git-send-email-imammedo@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
[ehabkost: Changed "since 2.13" to "since 3.0"]
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
docs/devel/qapi-code-gen.txt
include/qapi/qmp/dispatch.h
monitor.c
qapi/introspect.json
qapi/misc.json
qapi/run-state.json
scripts/qapi/commands.py
scripts/qapi/common.py
scripts/qapi/doc.py
scripts/qapi/introspect.py
tests/qapi-schema/test-qapi.py