root / qapi-schema.json @ aa9b79bc
History | View | Annotate | Download (4.9 kB)
1 |
# -*- Mode: Python -*- |
---|---|
2 |
#
|
3 |
# QAPI Schema |
4 |
|
5 |
## |
6 |
# @NameInfo: |
7 |
#
|
8 |
# Guest name information. |
9 |
#
|
10 |
# @name: #optional The name of the guest |
11 |
#
|
12 |
# Since 0.14.0 |
13 |
## |
14 |
{ 'type': 'NameInfo', 'data': {'*name': 'str'} } |
15 |
|
16 |
## |
17 |
# @query-name: |
18 |
#
|
19 |
# Return the name information of a guest. |
20 |
#
|
21 |
# Returns: @NameInfo of the guest |
22 |
#
|
23 |
# Since 0.14.0 |
24 |
## |
25 |
{ 'command': 'query-name', 'returns': 'NameInfo' } |
26 |
|
27 |
## |
28 |
# @VersionInfo: |
29 |
#
|
30 |
# A description of QEMU's version. |
31 |
#
|
32 |
# @qemu.major: The major version of QEMU |
33 |
#
|
34 |
# @qemu.minor: The minor version of QEMU |
35 |
#
|
36 |
# @qemu.micro: The micro version of QEMU. By current convention, a micro |
37 |
# version of 50 signifies a development branch. A micro version |
38 |
# greater than or equal to 90 signifies a release candidate for |
39 |
# the next minor version. A micro version of less than 50 |
40 |
# signifies a stable release. |
41 |
#
|
42 |
# @package: QEMU will always set this field to an empty string. Downstream |
43 |
# versions of QEMU should set this to a non-empty string. The |
44 |
# exact format depends on the downstream however it highly |
45 |
# recommended that a unique name is used. |
46 |
#
|
47 |
# Since: 0.14.0 |
48 |
## |
49 |
{ 'type': 'VersionInfo', |
50 |
'data': {'qemu': {'major': 'int', 'minor': 'int', 'micro': 'int'}, |
51 |
'package': 'str'} } |
52 |
|
53 |
## |
54 |
# @query-version: |
55 |
#
|
56 |
# Returns the current version of QEMU. |
57 |
#
|
58 |
# Returns: A @VersionInfo object describing the current version of QEMU. |
59 |
#
|
60 |
# Since: 0.14.0 |
61 |
## |
62 |
{ 'command': 'query-version', 'returns': 'VersionInfo' } |
63 |
|
64 |
## |
65 |
# @KvmInfo: |
66 |
#
|
67 |
# Information about support for KVM acceleration |
68 |
#
|
69 |
# @enabled: true if KVM acceleration is active |
70 |
#
|
71 |
# @present: true if KVM acceleration is built into this executable |
72 |
#
|
73 |
# Since: 0.14.0 |
74 |
## |
75 |
{ 'type': 'KvmInfo', 'data': {'enabled': 'bool', 'present': 'bool'} } |
76 |
|
77 |
## |
78 |
# @query-kvm: |
79 |
#
|
80 |
# Returns information about KVM acceleration |
81 |
#
|
82 |
# Returns: @KvmInfo |
83 |
#
|
84 |
# Since: 0.14.0 |
85 |
## |
86 |
{ 'command': 'query-kvm', 'returns': 'KvmInfo' } |
87 |
|
88 |
## |
89 |
# @RunState |
90 |
#
|
91 |
# An enumation of VM run states. |
92 |
#
|
93 |
# @debug: QEMU is running on a debugger |
94 |
#
|
95 |
# @inmigrate: guest is paused waiting for an incoming migration |
96 |
#
|
97 |
# @internal-error: An internal error that prevents further guest execution |
98 |
# has occurred |
99 |
#
|
100 |
# @io-error: the last IOP has failed and the device is configured to pause |
101 |
# on I/O errors |
102 |
#
|
103 |
# @paused: guest has been paused via the 'stop' command |
104 |
#
|
105 |
# @postmigrate: guest is paused following a successful 'migrate' |
106 |
#
|
107 |
# @prelaunch: QEMU was started with -S and guest has not started |
108 |
#
|
109 |
# @finish-migrate: guest is paused to finish the migration process |
110 |
#
|
111 |
# @restore-vm: guest is paused to restore VM state |
112 |
#
|
113 |
# @running: guest is actively running |
114 |
#
|
115 |
# @save-vm: guest is paused to save the VM state |
116 |
#
|
117 |
# @shutdown: guest is shut down (and -no-shutdown is in use) |
118 |
#
|
119 |
# @watchdog: the watchdog action is configured to pause and has been triggered |
120 |
## |
121 |
{ 'enum': 'RunState', |
122 |
'data': [ 'debug', 'inmigrate', 'internal-error', 'io-error', 'paused', |
123 |
'postmigrate', 'prelaunch', 'finish-migrate', 'restore-vm', |
124 |
'running', 'save-vm', 'shutdown', 'watchdog' ] } |
125 |
|
126 |
## |
127 |
# @StatusInfo: |
128 |
#
|
129 |
# Information about VCPU run state |
130 |
#
|
131 |
# @running: true if all VCPUs are runnable, false if not runnable |
132 |
#
|
133 |
# @singlestep: true if VCPUs are in single-step mode |
134 |
#
|
135 |
# @status: the virtual machine @RunState |
136 |
#
|
137 |
# Since: 0.14.0 |
138 |
#
|
139 |
# Notes: @singlestep is enabled through the GDB stub |
140 |
## |
141 |
{ 'type': 'StatusInfo', |
142 |
'data': {'running': 'bool', 'singlestep': 'bool', 'status': 'RunState'} } |
143 |
|
144 |
## |
145 |
# @query-status: |
146 |
#
|
147 |
# Query the run status of all VCPUs |
148 |
#
|
149 |
# Returns: @StatusInfo reflecting all VCPUs |
150 |
#
|
151 |
# Since: 0.14.0 |
152 |
## |
153 |
{ 'command': 'query-status', 'returns': 'StatusInfo' } |
154 |
|
155 |
## |
156 |
# @UuidInfo: |
157 |
#
|
158 |
# Guest UUID information. |
159 |
#
|
160 |
# @UUID: the UUID of the guest |
161 |
#
|
162 |
# Since: 0.14.0 |
163 |
#
|
164 |
# Notes: If no UUID was specified for the guest, a null UUID is returned. |
165 |
## |
166 |
{ 'type': 'UuidInfo', 'data': {'UUID': 'str'} } |
167 |
|
168 |
## |
169 |
# @query-uuid: |
170 |
#
|
171 |
# Query the guest UUID information. |
172 |
#
|
173 |
# Returns: The @UuidInfo for the guest |
174 |
#
|
175 |
# Since 0.14.0 |
176 |
## |
177 |
{ 'command': 'query-uuid', 'returns': 'UuidInfo' } |
178 |
|
179 |
## |
180 |
# @ChardevInfo: |
181 |
#
|
182 |
# Information about a character device. |
183 |
#
|
184 |
# @label: the label of the character device |
185 |
#
|
186 |
# @filename: the filename of the character device |
187 |
#
|
188 |
# Notes: @filename is encoded using the QEMU command line character device |
189 |
# encoding. See the QEMU man page for details. |
190 |
#
|
191 |
# Since: 0.14.0 |
192 |
## |
193 |
{ 'type': 'ChardevInfo', 'data': {'label': 'str', 'filename': 'str'} } |
194 |
|
195 |
## |
196 |
# @query-chardev: |
197 |
#
|
198 |
# Returns information about current character devices. |
199 |
#
|
200 |
# Returns: a list of @ChardevInfo |
201 |
#
|
202 |
# Since: 0.14.0 |
203 |
## |
204 |
{ 'command': 'query-chardev', 'returns': ['ChardevInfo'] } |
205 |
|
206 |
## |
207 |
# @CommandInfo: |
208 |
#
|
209 |
# Information about a QMP command |
210 |
#
|
211 |
# @name: The command name |
212 |
#
|
213 |
# Since: 0.14.0 |
214 |
## |
215 |
{ 'type': 'CommandInfo', 'data': {'name': 'str'} } |
216 |
|
217 |
## |
218 |
# @query-commands: |
219 |
#
|
220 |
# Return a list of supported QMP commands by this server |
221 |
#
|
222 |
# Returns: A list of @CommandInfo for all supported commands |
223 |
#
|
224 |
# Since: 0.14.0 |
225 |
## |
226 |
{ 'command': 'query-commands', 'returns': ['CommandInfo'] } |
227 |
|