Lines Matching +full:build +full:- +full:without +full:- +full:defaults
1 # *-*- Mode: Python -*-*
8 # For locating a particular item, please see the `qapi-qga-index`.
12 # .. qmp-example::
14 # -> ... text sent by client (commands) ...
15 # <- ... text sent by server (command responses and events) ...
21 # :doc:`QEMU Machine Protocol Specification </interop/qmp-spec>`
25 { 'pragma': { 'doc-required': true } }
31 'member-name-exceptions': [
34 # Commands allowed to return a non-dictionary:
35 'command-returns-exceptions': [
36 'guest-file-open',
37 'guest-fsfreeze-freeze',
38 'guest-fsfreeze-freeze-list',
39 'guest-fsfreeze-status',
40 'guest-fsfreeze-thaw',
41 'guest-get-time',
42 'guest-set-vcpus',
43 'guest-sync',
44 'guest-sync-delimited' ],
46 'documentation-exceptions': [
50 # @guest-sync-delimited:
58 # after any client-side timeouts (including timeouts on receiving a
74 # @id: randomly generated 64-bit integer
80 { 'command': 'guest-sync-delimited',
85 # @guest-sync:
93 # client to handle stale whole or partially-delivered JSON text in
98 # scenario being if qemu-ga responses are fed character-by-character
99 # into a JSON parser. In these situations, using guest-sync-delimited
103 # JSON objects, guest-sync should be sufficient, but note that in
111 # @id: randomly generated 64-bit integer
117 { 'command': 'guest-sync',
122 # @guest-ping:
124 # Ping the guest agent, a non-error return implies success
128 { 'command': 'guest-ping' }
131 # @guest-get-time:
134 # of 1970-01-01 in UTC.
140 { 'command': 'guest-get-time',
144 # @guest-set-time:
155 # will make it easier for a guest to resynchronize without waiting for
161 # @time: time of nanoseconds, relative to the Epoch of 1970-01-01 in
166 { 'command': 'guest-set-time',
178 # @success-response: whether command returns a response on success
184 'data': { 'name': 'str', 'enabled': 'bool', 'success-response': 'bool' } }
201 # @guest-info:
209 { 'command': 'guest-info',
213 # @guest-shutdown:
215 # Initiate guest-activated shutdown. Note: this is an asynchronous
222 # when running with --no-shutdown, by issuing the query-status QMP
227 { 'command': 'guest-shutdown', 'data': { '*mode': 'str' },
228 'success-response': false }
231 # @guest-file-open:
243 { 'command': 'guest-file-open',
248 # @guest-file-close:
252 # @handle: filehandle returned by guest-file-open
256 { 'command': 'guest-file-close',
262 # Result of guest agent file-read operation
265 # base64-encoding is applied)
267 # @buf-b64: base64-encoded bytes read
274 'data': { 'count': 'int', 'buf-b64': 'str', 'eof': 'bool' } }
277 # @guest-file-read:
279 # Read from an open file in the guest. Data will be base64-encoded.
280 # As this command is just for limited, ad-hoc debugging, such as log
283 # @handle: filehandle returned by guest-file-open
292 { 'command': 'guest-file-read',
299 # Result of guest agent file-write operation
302 # written, after base64-decoding of provided buffer)
312 # @guest-file-write:
316 # @handle: filehandle returned by guest-file-open
318 # @buf-b64: base64-encoded string representing data to be written
320 # @count: bytes to write (actual bytes, after base64-decode), default
321 # is all content in buf-b64 buffer after base64 decoding
327 { 'command': 'guest-file-write',
328 'data': { 'handle': 'int', 'buf-b64': 'str', '*count': 'int' },
335 # Result of guest agent file-seek operation
349 # Symbolic names for use in @guest-file-seek
364 # Controls the meaning of offset to @guest-file-seek.
378 # @guest-file-seek:
384 # @handle: filehandle returned by guest-file-open
394 { 'command': 'guest-file-seek',
400 # @guest-file-flush:
404 # @handle: filehandle returned by guest-file-open
408 { 'command': 'guest-file-flush',
418 # @frozen: all non-network guest filesystems frozen
427 # @guest-fsfreeze-status:
440 { 'command': 'guest-fsfreeze-status',
445 # @guest-fsfreeze-freeze:
448 # command succeeded, you may call @guest-fsfreeze-thaw later to
452 # frozen as a result of this call, then @guest-fsfreeze-status will
453 # remain "thawed" and calling @guest-fsfreeze-thaw is not necessary.
458 # Volume Shadow-copy Service DLL helper. The frozen state is limited
463 { 'command': 'guest-fsfreeze-freeze',
468 # @guest-fsfreeze-freeze-list:
471 # @guest-fsfreeze-freeze.
483 { 'command': 'guest-fsfreeze-freeze-list',
489 # @guest-fsfreeze-thaw:
496 # guest-fsfreeze-freeze, this likely means some freezable filesystems
502 { 'command': 'guest-fsfreeze-thaw',
536 # @guest-fstrim:
553 { 'command': 'guest-fstrim',
559 # @guest-suspend-disk:
566 # - systemd hibernate
567 # - pm-utils (via pm-hibernate)
568 # - manual write into sysfs
572 # or, when running with --no-shutdown, by issuing the query-status QMP
578 # - If suspend to disk is not supported, Unsupported
580 # .. note:: It's strongly recommended to issue the guest-sync command
585 { 'command': 'guest-suspend-disk', 'success-response': false,
589 # @guest-suspend-ram:
596 # - systemd hibernate
597 # - pm-utils (via pm-hibernate)
598 # - manual write into sysfs
600 # IMPORTANT: guest-suspend-ram requires working wakeup support in
601 # QEMU. You should check QMP command query-current-machine returns
602 # wakeup-suspend-support: true before issuing this command. Failure
611 # 2. Issue the query-status QMP command to confirm the VM status is
615 # - If suspend to ram is not supported, Unsupported
617 # .. note:: It's strongly recommended to issue the guest-sync command
622 { 'command': 'guest-suspend-ram', 'success-response': false,
626 # @guest-suspend-hybrid:
633 # - systemd hybrid-sleep
634 # - pm-utils (via pm-suspend-hybrid)
636 # IMPORTANT: guest-suspend-hybrid requires working wakeup support in
637 # QEMU. You should check QMP command query-current-machine returns
638 # wakeup-suspend-support: true before issuing this command. Failure
647 # 2. Issue the query-status QMP command to confirm the VM status is
651 # - If hybrid suspend is not supported, Unsupported
653 # .. note:: It's strongly recommended to issue the guest-sync command
658 { 'command': 'guest-suspend-hybrid', 'success-response': false,
679 # @ip-address: IP address
681 # @ip-address-type: Type of @ip-address (e.g. ipv4, ipv6)
683 # @prefix: Network prefix length of @ip-address
688 'data': {'ip-address': 'str',
689 'ip-address-type': 'GuestIpAddressType',
696 # @rx-bytes: total bytes received
698 # @rx-packets: total packets received
700 # @rx-errs: bad packets received
702 # @rx-dropped: receiver dropped packets
704 # @tx-bytes: total bytes transmitted
706 # @tx-packets: total packets transmitted
708 # @tx-errs: packet transmit problems
710 # @tx-dropped: dropped packets transmitted
715 'data': {'rx-bytes': 'uint64',
716 'rx-packets': 'uint64',
717 'rx-errs': 'uint64',
718 'rx-dropped': 'uint64',
719 'tx-bytes': 'uint64',
720 'tx-packets': 'uint64',
721 'tx-errs': 'uint64',
722 'tx-dropped': 'uint64'
731 # @hardware-address: Hardware address of @name
733 # @ip-addresses: List of addresses assigned to @name
742 '*hardware-address': 'str',
743 '*ip-addresses': ['GuestIpAddress'],
748 # @guest-network-get-interfaces:
756 { 'command': 'guest-network-get-interfaces',
763 # @logical-id: Arbitrary guest-specific unique identifier of the VCPU.
767 # @can-offline: Whether offlining the VCPU is possible. This member
775 'data': {'logical-id': 'int',
777 '*can-offline': 'bool'},
781 # @guest-get-vcpus:
785 # This is a read-only operation.
792 { 'command': 'guest-get-vcpus',
797 # @guest-set-vcpus:
803 # processed node by node in order. In each node @logical-id is
805 # requested state. The set of distinct @logical-id's is only
806 # required to be a subset of the guest-supported identifiers.
808 # @logical-id (with possibly different @online field). Preferably
810 # @guest-get-vcpus' return value.
816 # - 0:
819 # - < length(@vcpus):
825 # - length(@vcpus):
829 # - If the reconfiguration of the first node in @vcpus failed.
834 { 'command': 'guest-set-vcpus',
874 # @sas: Win serial-attaches SCSI bus type
880 # @file-backed-virtual: Win file-backed bus type
889 'sas', 'mmc', 'virtual', 'file-backed-virtual', 'nvme' ],
934 # @pci-controller: controller's PCI address (fields are set to -1 if
937 # @bus-type: bus type
949 # @ccw-address: CCW address on s390x (since: 6.0)
954 'data': {'pci-controller': 'GuestPCIAddress',
955 'bus-type': 'GuestDiskBusType',
958 '*ccw-address': 'GuestCCWAddress'},
972 'data': {'critical-warning': 'int',
974 'available-spare': 'int',
975 'available-spare-threshold': 'int',
976 'percentage-used': 'int',
977 'data-units-read-lo': 'uint64',
978 'data-units-read-hi': 'uint64',
979 'data-units-written-lo': 'uint64',
980 'data-units-written-hi': 'uint64',
981 'host-read-commands-lo': 'uint64',
982 'host-read-commands-hi': 'uint64',
983 'host-write-commands-lo': 'uint64',
984 'host-write-commands-hi': 'uint64',
985 'controller-busy-time-lo': 'uint64',
986 'controller-busy-time-hi': 'uint64',
987 'power-cycles-lo': 'uint64',
988 'power-cycles-hi': 'uint64',
989 'power-on-hours-lo': 'uint64',
990 'power-on-hours-hi': 'uint64',
991 'unsafe-shutdowns-lo': 'uint64',
992 'unsafe-shutdowns-hi': 'uint64',
993 'media-errors-lo': 'uint64',
994 'media-errors-hi': 'uint64',
995 'number-of-error-log-entries-lo': 'uint64',
996 'number-of-error-log-entries-hi': 'uint64' },
1025 # @address: disk address information (only for non-virtual devices)
1041 # @guest-get-disks:
1045 # of non-zero size including e.g. removable devices, loop devices,
1050 { 'command': 'guest-get-disks',
1063 # @used-bytes: file system used bytes (since 3.0)
1065 # @total-bytes: filesystem capacity in bytes for unprivileged users (since 3.0)
1067 # @total-bytes-privileged: filesystem capacity in bytes for privileged users
1077 '*used-bytes': 'uint64', '*total-bytes': 'uint64',
1078 '*total-bytes-privileged': 'uint64', 'disk': ['GuestDiskAddress']},
1082 # @guest-get-fsinfo:
1086 # @guest-fsfreeze-freeze-list. Network filesystems (such as CIFS
1091 { 'command': 'guest-get-fsinfo',
1096 # @guest-set-user-password:
1111 # flag, as they may require the clear-text password
1114 # transmission, even if already crypt()d, to ensure it is 8-bit safe
1119 { 'command': 'guest-set-user-password',
1126 # @phys-index: Arbitrary guest-specific unique identifier of the
1131 # @can-offline: Whether offlining the MEMORY BLOCK is possible. This
1139 'data': {'phys-index': 'uint64',
1141 '*can-offline': 'bool'},
1145 # @guest-get-memory-blocks:
1149 # This is a read-only operation.
1157 { 'command': 'guest-get-memory-blocks',
1169 # @not-found: can't find the corresponding memoryXXX directory in
1172 # @operation-not-supported: for some old kernels, it does not support
1175 # @operation-failed: the operation of online/offline memory block
1181 'data': ['success', 'not-found', 'operation-not-supported',
1182 'operation-failed'],
1188 # @phys-index: same with the 'phys-index' member of @GuestMemoryBlock.
1192 # @error-code: the error number. When memory block operation fails,
1199 'data': { 'phys-index': 'uint64',
1201 '*error-code': 'int' },
1205 # @guest-set-memory-blocks:
1210 # @mem-blks: The memory blocks to be reconfigured. This list is
1211 # processed node by node in order. In each node @phys-index is
1214 # @phys-index's is only required to be a subset of the
1215 # guest-supported identifiers. There's no restriction on list
1216 # length or on repeating the same @phys-index (with possibly
1218 # describe a modified subset of @guest-get-memory-blocks' return
1225 # Note: it will return an empty list if the @mem-blks list was
1231 { 'command': 'guest-set-memory-blocks',
1232 'data': {'mem-blks': ['GuestMemoryBlock'] },
1250 # @guest-get-memory-block-info:
1258 { 'command': 'guest-get-memory-block-info',
1272 # @out-data: base64-encoded stdout of the process. This field will
1275 # @err-data: base64-encoded stderr of the process. Note: @out-data
1276 # and @err-data are present only if 'capture-output' was specified
1277 # for 'guest-exec'. This field will only be populated after the
1280 # @out-truncated: true if stdout was not fully captured due to size
1283 # @err-truncated: true if stderr was not fully captured due to size
1290 '*out-data': 'str', '*err-data': 'str',
1291 '*out-truncated': 'bool', '*err-truncated': 'bool' }}
1293 # @guest-exec-status:
1296 # guest-exec. Reap the process and associated metadata if it has
1299 # @pid: pid returned from guest-exec
1305 { 'command': 'guest-exec-status',
1322 # An enumeration of guest-exec capture modes.
1331 # GuestExecStatus out-data and err-data, respectively
1334 # out-data. Not effective on windows guests.
1345 # Controls what guest-exec output gets captures.
1359 # @guest-exec:
1369 # @input-data: data to be passed to process stdin (base64 encoded)
1371 # @capture-output: bool flag to enable capture of stdout/stderr of
1372 # running process. Defaults to false.
1378 { 'command': 'guest-exec',
1380 '*input-data': 'str', '*capture-output': 'GuestExecCaptureOutput' },
1387 # @host-name: Fully qualified domain name of the guest OS
1392 'data': { 'host-name': 'str' } }
1395 # @guest-get-host-name:
1399 # The returned name is not necessarily a fully-qualified domain name,
1407 { 'command': 'guest-get-host-name',
1418 # @login-time: Time of login of this user on the computer. If
1426 'data': { 'user': 'str', 'login-time': 'number', '*domain': 'str' },
1430 # @guest-get-users:
1438 { 'command': 'guest-get-users',
1457 # @guest-get-timezone:
1465 { 'command': 'guest-get-timezone',
1471 # @kernel-release:
1473 # * Windows: build number of the OS
1475 # @kernel-version:
1484 # * POSIX: as defined by os-release(5)
1488 # * POSIX: as defined by os-release(5)
1491 # @pretty-name:
1492 # * POSIX: as defined by os-release(5)
1496 # * POSIX: as defined by os-release(5)
1500 # @version-id:
1501 # * POSIX: as defined by os-release(5)
1505 # * POSIX: as defined by os-release(5)
1508 # @variant-id:
1509 # * POSIX: as defined by os-release(5)
1512 # .. note:: On POSIX systems the fields @id, @name, @pretty-name,
1513 # @version, @version-id, @variant and @variant-id follow the
1514 # definition specified in os-release(5). Refer to the manual page for
1516 # os-release file. If the file is not present in the system, or the
1526 '*kernel-release': 'str', '*kernel-version': 'str',
1528 '*pretty-name': 'str', '*version': 'str', '*version-id': 'str',
1529 '*variant': 'str', '*variant-id': 'str' } }
1532 # @guest-get-osinfo:
1540 { 'command': 'guest-get-osinfo',
1555 # @vendor-id: vendor ID
1557 # @device-id: device ID
1562 'data': { 'vendor-id': 'uint16', 'device-id': 'uint16' },
1583 # @driver-name: name of the associated driver
1585 # @driver-date: driver release date, in nanoseconds since the epoch
1587 # @driver-version: driver version
1595 'driver-name': 'str',
1596 '*driver-date': 'int',
1597 '*driver-version': 'str',
1603 # @guest-get-devices:
1611 { 'command': 'guest-get-devices',
1629 # @guest-ssh-get-authorized-keys:
1640 { 'command': 'guest-ssh-get-authorized-keys',
1646 # @guest-ssh-add-authorized-keys:
1660 { 'command': 'guest-ssh-add-authorized-keys',
1665 # @guest-ssh-remove-authorized-keys:
1678 { 'command': 'guest-ssh-remove-authorized-keys',
1685 # @read-sectors: sectors read
1687 # @read-ios: reads completed successfully
1689 # @read-merges: read requests merged
1691 # @write-sectors: sectors written
1693 # @write-ios: writes completed
1695 # @write-merges: write requests merged
1697 # @discard-sectors: sectors discarded
1699 # @discard-ios: discards completed successfully
1701 # @discard-merges: discard requests merged
1703 # @flush-ios: flush requests completed successfully
1705 # @read-ticks: time spent reading(ms)
1707 # @write-ticks: time spent writing(ms)
1709 # @discard-ticks: time spent discarding(ms)
1711 # @flush-ticks: time spent flushing(ms)
1713 # @ios-pgr: number of I/Os currently in flight
1715 # @total-ticks: time spent doing I/Os (ms)
1717 # @weight-ticks: weighted time spent doing I/Os since the last update
1723 'data': {'*read-sectors': 'uint64',
1724 '*read-ios': 'uint64',
1725 '*read-merges': 'uint64',
1726 '*write-sectors': 'uint64',
1727 '*write-ios': 'uint64',
1728 '*write-merges': 'uint64',
1729 '*discard-sectors': 'uint64',
1730 '*discard-ios': 'uint64',
1731 '*discard-merges': 'uint64',
1732 '*flush-ios': 'uint64',
1733 '*read-ticks': 'uint64',
1734 '*write-ticks': 'uint64',
1735 '*discard-ticks': 'uint64',
1736 '*flush-ticks': 'uint64',
1737 '*ios-pgr': 'uint64',
1738 '*total-ticks': 'uint64',
1739 '*weight-ticks': 'uint64'
1762 # @guest-get-diskstats:
1770 { 'command': 'guest-get-diskstats',
1806 # @irq: Time servicing interrupts (since Linux 2.6.0-test4)
1808 # @softirq: Time servicing softirqs (since Linux 2.6.0-test4)
1850 # @guest-get-cpustats:
1858 { 'command': 'guest-get-cpustats',
1869 # @load1m: 1-minute load avage
1871 # @load5m: 5-minute load avage
1873 # @load15m: 15-minute load avage
1887 # @guest-get-load:
1895 { 'command': 'guest-get-load',
1915 # @irtt: Initial round-trip delay (not for windows, IPv4 only)
1961 # @guest-network-get-route:
1968 { 'command': 'guest-network-get-route',