]> Git Repo - qemu.git/blob - qapi/event.json
qapi-schema: Collect char device stuff in qapi/char.json
[qemu.git] / qapi / event.json
1 # -*- Mode: Python -*-
2
3 ##
4 # = Other events
5 ##
6
7 ##
8 # @RTC_CHANGE:
9 #
10 # Emitted when the guest changes the RTC time.
11 #
12 # @offset: offset between base RTC clock (as specified by -rtc base), and
13 #          new RTC clock value
14 #
15 # Note: This event is rate-limited.
16 #
17 # Since: 0.13.0
18 #
19 # Example:
20 #
21 # <-   { "event": "RTC_CHANGE",
22 #        "data": { "offset": 78 },
23 #        "timestamp": { "seconds": 1267020223, "microseconds": 435656 } }
24 #
25 ##
26 { 'event': 'RTC_CHANGE',
27   'data': { 'offset': 'int' } }
28
29 ##
30 # @DEVICE_DELETED:
31 #
32 # Emitted whenever the device removal completion is acknowledged by the guest.
33 # At this point, it's safe to reuse the specified device ID. Device removal can
34 # be initiated by the guest or by HMP/QMP commands.
35 #
36 # @device: device name
37 #
38 # @path: device path
39 #
40 # Since: 1.5
41 #
42 # Example:
43 #
44 # <- { "event": "DEVICE_DELETED",
45 #      "data": { "device": "virtio-net-pci-0",
46 #                "path": "/machine/peripheral/virtio-net-pci-0" },
47 #      "timestamp": { "seconds": 1265044230, "microseconds": 450486 } }
48 #
49 ##
50 { 'event': 'DEVICE_DELETED',
51   'data': { '*device': 'str', 'path': 'str' } }
52
53 ##
54 # @NIC_RX_FILTER_CHANGED:
55 #
56 # Emitted once until the 'query-rx-filter' command is executed, the first event
57 # will always be emitted
58 #
59 # @name: net client name
60 #
61 # @path: device path
62 #
63 # Since: 1.6
64 #
65 # Example:
66 #
67 # <- { "event": "NIC_RX_FILTER_CHANGED",
68 #      "data": { "name": "vnet0",
69 #                "path": "/machine/peripheral/vnet0/virtio-backend" },
70 #      "timestamp": { "seconds": 1368697518, "microseconds": 326866 } }
71 #    }
72 #
73 ##
74 { 'event': 'NIC_RX_FILTER_CHANGED',
75   'data': { '*name': 'str', 'path': 'str' } }
76
77 ##
78 # @VNC_CONNECTED:
79 #
80 # Emitted when a VNC client establishes a connection
81 #
82 # @server: server information
83 #
84 # @client: client information
85 #
86 # Note: This event is emitted before any authentication takes place, thus
87 # the authentication ID is not provided
88 #
89 # Since: 0.13.0
90 #
91 # Example:
92 #
93 # <- { "event": "VNC_CONNECTED",
94 #      "data": {
95 #            "server": { "auth": "sasl", "family": "ipv4",
96 #                        "service": "5901", "host": "0.0.0.0" },
97 #            "client": { "family": "ipv4", "service": "58425",
98 #                        "host": "127.0.0.1" } },
99 #      "timestamp": { "seconds": 1262976601, "microseconds": 975795 } }
100 #
101 ##
102 { 'event': 'VNC_CONNECTED',
103   'data': { 'server': 'VncServerInfo',
104             'client': 'VncBasicInfo' } }
105
106 ##
107 # @VNC_INITIALIZED:
108 #
109 # Emitted after authentication takes place (if any) and the VNC session is
110 # made active
111 #
112 # @server: server information
113 #
114 # @client: client information
115 #
116 # Since: 0.13.0
117 #
118 # Example:
119 #
120 # <-  { "event": "VNC_INITIALIZED",
121 #       "data": {
122 #            "server": { "auth": "sasl", "family": "ipv4",
123 #                        "service": "5901", "host": "0.0.0.0"},
124 #            "client": { "family": "ipv4", "service": "46089",
125 #                        "host": "127.0.0.1", "sasl_username": "luiz" } },
126 #       "timestamp": { "seconds": 1263475302, "microseconds": 150772 } }
127 #
128 ##
129 { 'event': 'VNC_INITIALIZED',
130   'data': { 'server': 'VncServerInfo',
131             'client': 'VncClientInfo' } }
132
133 ##
134 # @VNC_DISCONNECTED:
135 #
136 # Emitted when the connection is closed
137 #
138 # @server: server information
139 #
140 # @client: client information
141 #
142 # Since: 0.13.0
143 #
144 # Example:
145 #
146 # <- { "event": "VNC_DISCONNECTED",
147 #      "data": {
148 #            "server": { "auth": "sasl", "family": "ipv4",
149 #                        "service": "5901", "host": "0.0.0.0" },
150 #            "client": { "family": "ipv4", "service": "58425",
151 #                        "host": "127.0.0.1", "sasl_username": "luiz" } },
152 #      "timestamp": { "seconds": 1262976601, "microseconds": 975795 } }
153 #
154 ##
155 { 'event': 'VNC_DISCONNECTED',
156   'data': { 'server': 'VncServerInfo',
157             'client': 'VncClientInfo' } }
158
159 ##
160 # @SPICE_CONNECTED:
161 #
162 # Emitted when a SPICE client establishes a connection
163 #
164 # @server: server information
165 #
166 # @client: client information
167 #
168 # Since: 0.14.0
169 #
170 # Example:
171 #
172 # <- { "timestamp": {"seconds": 1290688046, "microseconds": 388707},
173 #      "event": "SPICE_CONNECTED",
174 #      "data": {
175 #        "server": { "port": "5920", "family": "ipv4", "host": "127.0.0.1"},
176 #        "client": {"port": "52873", "family": "ipv4", "host": "127.0.0.1"}
177 #    }}
178 #
179 ##
180 { 'event': 'SPICE_CONNECTED',
181   'data': { 'server': 'SpiceBasicInfo',
182             'client': 'SpiceBasicInfo' } }
183
184 ##
185 # @SPICE_INITIALIZED:
186 #
187 # Emitted after initial handshake and authentication takes place (if any)
188 # and the SPICE channel is up and running
189 #
190 # @server: server information
191 #
192 # @client: client information
193 #
194 # Since: 0.14.0
195 #
196 # Example:
197 #
198 # <- { "timestamp": {"seconds": 1290688046, "microseconds": 417172},
199 #      "event": "SPICE_INITIALIZED",
200 #      "data": {"server": {"auth": "spice", "port": "5921",
201 #                          "family": "ipv4", "host": "127.0.0.1"},
202 #               "client": {"port": "49004", "family": "ipv4", "channel-type": 3,
203 #                          "connection-id": 1804289383, "host": "127.0.0.1",
204 #                          "channel-id": 0, "tls": true}
205 #    }}
206 #
207 ##
208 { 'event': 'SPICE_INITIALIZED',
209   'data': { 'server': 'SpiceServerInfo',
210             'client': 'SpiceChannel' } }
211
212 ##
213 # @SPICE_DISCONNECTED:
214 #
215 # Emitted when the SPICE connection is closed
216 #
217 # @server: server information
218 #
219 # @client: client information
220 #
221 # Since: 0.14.0
222 #
223 # Example:
224 #
225 # <- { "timestamp": {"seconds": 1290688046, "microseconds": 388707},
226 #      "event": "SPICE_DISCONNECTED",
227 #      "data": {
228 #        "server": { "port": "5920", "family": "ipv4", "host": "127.0.0.1"},
229 #        "client": {"port": "52873", "family": "ipv4", "host": "127.0.0.1"}
230 #    }}
231 #
232 ##
233 { 'event': 'SPICE_DISCONNECTED',
234   'data': { 'server': 'SpiceBasicInfo',
235             'client': 'SpiceBasicInfo' } }
236
237 ##
238 # @SPICE_MIGRATE_COMPLETED:
239 #
240 # Emitted when SPICE migration has completed
241 #
242 # Since: 1.3
243 #
244 # Example:
245 #
246 # <- { "timestamp": {"seconds": 1290688046, "microseconds": 417172},
247 #      "event": "SPICE_MIGRATE_COMPLETED" }
248 #
249 ##
250 { 'event': 'SPICE_MIGRATE_COMPLETED' }
251
252 ##
253 # @MIGRATION:
254 #
255 # Emitted when a migration event happens
256 #
257 # @status: @MigrationStatus describing the current migration status.
258 #
259 # Since: 2.4
260 #
261 # Example:
262 #
263 # <- {"timestamp": {"seconds": 1432121972, "microseconds": 744001},
264 #     "event": "MIGRATION",
265 #     "data": {"status": "completed"} }
266 #
267 ##
268 { 'event': 'MIGRATION',
269   'data': {'status': 'MigrationStatus'}}
270
271 ##
272 # @MIGRATION_PASS:
273 #
274 # Emitted from the source side of a migration at the start of each pass
275 # (when it syncs the dirty bitmap)
276 #
277 # @pass: An incrementing count (starting at 1 on the first pass)
278 #
279 # Since: 2.6
280 #
281 # Example:
282 #
283 # { "timestamp": {"seconds": 1449669631, "microseconds": 239225},
284 #   "event": "MIGRATION_PASS", "data": {"pass": 2} }
285 #
286 ##
287 { 'event': 'MIGRATION_PASS',
288   'data': { 'pass': 'int' } }
289
290 ##
291 # @ACPI_DEVICE_OST:
292 #
293 # Emitted when guest executes ACPI _OST method.
294 #
295 # @info: ACPIOSTInfo type as described in qapi-schema.json
296 #
297 # Since: 2.1
298 #
299 # Example:
300 #
301 # <- { "event": "ACPI_DEVICE_OST",
302 #      "data": { "device": "d1", "slot": "0",
303 #                "slot-type": "DIMM", "source": 1, "status": 0 } }
304 #
305 ##
306 { 'event': 'ACPI_DEVICE_OST',
307      'data': { 'info': 'ACPIOSTInfo' } }
308
309 ##
310 # @BALLOON_CHANGE:
311 #
312 # Emitted when the guest changes the actual BALLOON level. This value is
313 # equivalent to the @actual field return by the 'query-balloon' command
314 #
315 # @actual: actual level of the guest memory balloon in bytes
316 #
317 # Note: this event is rate-limited.
318 #
319 # Since: 1.2
320 #
321 # Example:
322 #
323 # <- { "event": "BALLOON_CHANGE",
324 #      "data": { "actual": 944766976 },
325 #      "timestamp": { "seconds": 1267020223, "microseconds": 435656 } }
326 #
327 ##
328 { 'event': 'BALLOON_CHANGE',
329   'data': { 'actual': 'int' } }
330
331 ##
332 # @QUORUM_FAILURE:
333 #
334 # Emitted by the Quorum block driver if it fails to establish a quorum
335 #
336 # @reference: device name if defined else node name
337 #
338 # @sector-num: number of the first sector of the failed read operation
339 #
340 # @sectors-count: failed read operation sector count
341 #
342 # Note: This event is rate-limited.
343 #
344 # Since: 2.0
345 #
346 # Example:
347 #
348 # <- { "event": "QUORUM_FAILURE",
349 #      "data": { "reference": "usr1", "sector-num": 345435, "sectors-count": 5 },
350 #      "timestamp": { "seconds": 1344522075, "microseconds": 745528 } }
351 #
352 ##
353 { 'event': 'QUORUM_FAILURE',
354   'data': { 'reference': 'str', 'sector-num': 'int', 'sectors-count': 'int' } }
355
356 ##
357 # @QUORUM_REPORT_BAD:
358 #
359 # Emitted to report a corruption of a Quorum file
360 #
361 # @type: quorum operation type (Since 2.6)
362 #
363 # @error: error message. Only present on failure. This field
364 #         contains a human-readable error message. There are no semantics other
365 #         than that the block layer reported an error and clients should not
366 #         try to interpret the error string.
367 #
368 # @node-name: the graph node name of the block driver state
369 #
370 # @sector-num: number of the first sector of the failed read operation
371 #
372 # @sectors-count: failed read operation sector count
373 #
374 # Note: This event is rate-limited.
375 #
376 # Since: 2.0
377 #
378 # Example:
379 #
380 # 1. Read operation
381 #
382 # { "event": "QUORUM_REPORT_BAD",
383 #      "data": { "node-name": "node0", "sector-num": 345435, "sectors-count": 5,
384 #                "type": "read" },
385 #      "timestamp": { "seconds": 1344522075, "microseconds": 745528 } }
386 #
387 # 2. Flush operation
388 #
389 # { "event": "QUORUM_REPORT_BAD",
390 #      "data": { "node-name": "node0", "sector-num": 0, "sectors-count": 2097120,
391 #                "type": "flush", "error": "Broken pipe" },
392 #      "timestamp": { "seconds": 1456406829, "microseconds": 291763 } }
393 #
394 ##
395 { 'event': 'QUORUM_REPORT_BAD',
396   'data': { 'type': 'QuorumOpType', '*error': 'str', 'node-name': 'str',
397             'sector-num': 'int', 'sectors-count': 'int' } }
398
399 ##
400 # @MEM_UNPLUG_ERROR:
401 #
402 # Emitted when memory hot unplug error occurs.
403 #
404 # @device: device name
405 #
406 # @msg: Informative message
407 #
408 # Since: 2.4
409 #
410 # Example:
411 #
412 # <- { "event": "MEM_UNPLUG_ERROR"
413 #      "data": { "device": "dimm1",
414 #                "msg": "acpi: device unplug for unsupported device"
415 #      },
416 #      "timestamp": { "seconds": 1265044230, "microseconds": 450486 } }
417 #
418 ##
419 { 'event': 'MEM_UNPLUG_ERROR',
420   'data': { 'device': 'str', 'msg': 'str' } }
421
422 ##
423 # @DUMP_COMPLETED:
424 #
425 # Emitted when background dump has completed
426 #
427 # @result: DumpQueryResult type described in qapi-schema.json.
428 #
429 # @error: human-readable error string that provides
430 #         hint on why dump failed. Only presents on failure. The
431 #         user should not try to interpret the error string.
432 #
433 # Since: 2.6
434 #
435 # Example:
436 #
437 # { "event": "DUMP_COMPLETED",
438 #   "data": {"result": {"total": 1090650112, "status": "completed",
439 #                       "completed": 1090650112} } }
440 #
441 ##
442 { 'event': 'DUMP_COMPLETED' ,
443   'data': { 'result': 'DumpQueryResult', '*error': 'str' } }
This page took 0.047297 seconds and 4 git commands to generate.