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