]> git.proxmox.com Git - mirror_qemu.git/blame - qapi/qapi-schema.json
Merge remote-tracking branch 'remotes/vivier/tags/q800-for-5.0-pull-request' into...
[mirror_qemu.git] / qapi / qapi-schema.json
CommitLineData
e3193601 1# -*- Mode: Python -*-
4d8bb958
MAL
2##
3# = Introduction
4#
5# This document describes all commands currently supported by QMP.
6#
7# Most of the time their usage is exactly the same as in the user Monitor, this
8# means that any other document which also describe commands (the manpage,
9# QEMU's manual, etc) can and should be consulted.
10#
11# QMP has two types of commands: regular and query commands. Regular commands
12# usually change the Virtual Machine's state someway, while query commands just
13# return information. The sections below are divided accordingly.
14#
15# It's important to observe that all communication examples are formatted in
16# a reader-friendly way, so that they're easier to understand. However, in real
17# protocol usage, they're emitted as a single line.
18#
19# Also, the following notation is used to denote data flow:
20#
21# Example:
22#
23# | -> data issued by the Client
24# | <- Server data response
e3193601 25#
cfb41b88 26# Please, refer to the QMP specification (docs/interop/qmp-spec.txt) for
4d8bb958
MAL
27# detailed information on the Server command and response formats.
28#
29# = Stability Considerations
30#
31# The current QMP command set (described in this file) may be useful for a
32# number of use cases, however it's limited and several commands have bad
33# defined semantics, specially with regard to command completion.
34#
35# These problems are going to be solved incrementally in the next QEMU releases
36# and we're going to establish a deprecation policy for badly defined commands.
37#
38# If you're planning to adopt QMP, please observe the following:
39#
40# 1. The deprecation policy will take effect and be documented soon, please
41# check the documentation of each used command as soon as a new release of
42# QEMU is available
43#
44# 2. DO NOT rely on anything which is not explicit documented
45#
46# 3. Errors, in special, are not documented. Applications should NOT check
47# for specific errors classes or data (it's strongly recommended to only
48# check for the "error" key)
49#
50##
48a32bed 51
9a9f9099 52{ 'include': 'pragma.json' }
1554a8fa 53
fb0bc835 54# Documentation generated with qapi-gen.py is in source order, with
211e5063
MA
55# included sub-schemas inserted at the first include directive
56# (subsequent include directives have no effect). To get a sane and
57# stable order, it's best to include each sub-schema just once, or
eb815e24 58# include it first right here.
104059da 59
abb3d37d 60{ 'include': 'error.json' }
eb815e24
MA
61{ 'include': 'common.json' }
62{ 'include': 'sockets.json' }
63{ 'include': 'run-state.json' }
64{ 'include': 'crypto.json' }
65{ 'include': 'block.json' }
66{ 'include': 'char.json' }
d06b747b 67{ 'include': 'dump.json' }
bf42508f 68{ 'include': 'job.json' }
eb815e24 69{ 'include': 'net.json' }
4a5c9903 70{ 'include': 'rdma.json' }
eb815e24
MA
71{ 'include': 'rocker.json' }
72{ 'include': 'tpm.json' }
73{ 'include': 'ui.json' }
c8c99887 74{ 'include': 'authz.json' }
eb815e24
MA
75{ 'include': 'migration.json' }
76{ 'include': 'transaction.json' }
77{ 'include': 'trace.json' }
fa4dcf57 78{ 'include': 'control.json' }
eb815e24 79{ 'include': 'introspect.json' }
c577ff62
MA
80{ 'include': 'qom.json' }
81{ 'include': 'qdev.json' }
8ac25c84 82{ 'include': 'machine.json' }
7f7b4e7a 83{ 'include': 'machine-target.json' }
eb815e24 84{ 'include': 'misc.json' }
b0227cdb 85{ 'include': 'misc-target.json' }
8c3a7d00 86{ 'include': 'audio.json' }