Eric Blake <[email protected]> writes: > On 3/12/21 9:32 AM, Markus Armbruster wrote: >> QMP commands return their response as a generated QAPI type, which the >> monitor core converts to JSON via QObject. >> >> query-qmp-schema's response is the generated introspection data. This >> is a QLitObject since commit 7d0f982bfb "qapi: generate a literal >> qobject for introspection", v2.12). Before, it was a string. Instead >> of converting QLitObject / string -> QObject -> QAPI type >> SchemaInfoList -> QObject -> JSON, we take a shortcut: the command is >> 'gen': false, so it can return the QObject instead of the QAPI type. >> Slightly simpler and more efficient. >> >> The next commit will filter the response for output policy, and this >> is easier in the SchemaInfoList representation. Drop the shortcut. >> >> This replaces the manual command registration by a generated one. The >> manual registration makes the commnd available before the machine is > > command
Fixing... >> built by passing flag QCO_ALLOW_PRECONFIG. To keep it available >> there, we need need to add 'allow-preconfig': true to its definition >> in the schema. >> >> Signed-off-by: Markus Armbruster <[email protected]> >> Reviewed-by: Eric Blake <[email protected]> >> --- >> qapi/introspect.json | 2 +- >> monitor/monitor-internal.h | 3 --- >> monitor/misc.c | 2 -- >> monitor/qmp-cmds-control.c | 29 ++++++++++++++++------------ >> storage-daemon/qemu-storage-daemon.c | 2 -- >> 5 files changed, 18 insertions(+), 20 deletions(-) >> > > R-b still stands. Thanks!
