From 8becb36063fb14df1e3ae4916215667e2cb65fa2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= Date: Mon, 22 Feb 2021 13:35:15 +0000 Subject: monitor: remove 'query-events' QMP command MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The code comment suggests removing QAPIEvent_(str|lookup) symbols too, however, these are both auto-generated as standard for any enum in QAPI. As such it they'll exist whether we use them or not. Reviewed-by: Eric Blake Reviewed-by: Thomas Huth Signed-off-by: Daniel P. Berrangé --- qapi/control.json | 45 --------------------------------------------- 1 file changed, 45 deletions(-) (limited to 'qapi') diff --git a/qapi/control.json b/qapi/control.json index 2615d5170b..71a838d49e 100644 --- a/qapi/control.json +++ b/qapi/control.json @@ -159,51 +159,6 @@ { 'command': 'query-commands', 'returns': ['CommandInfo'], 'allow-preconfig': true } -## -# @EventInfo: -# -# Information about a QMP event -# -# @name: The event name -# -# Since: 1.2 -## -{ 'struct': 'EventInfo', 'data': {'name': 'str'} } - -## -# @query-events: -# -# Return information on QMP events. -# -# Features: -# @deprecated: This command is deprecated, because its output doesn't -# reflect compile-time configuration. Use 'query-qmp-schema' -# instead. -# -# Returns: A list of @EventInfo. -# -# Since: 1.2 -# -# Example: -# -# -> { "execute": "query-events" } -# <- { -# "return": [ -# { -# "name":"SHUTDOWN" -# }, -# { -# "name":"RESET" -# } -# ] -# } -# -# Note: This example has been shortened as the real response is too long. -# -## -{ 'command': 'query-events', 'returns': ['EventInfo'], - 'features': [ 'deprecated' ] } - ## # @quit: # -- cgit v1.2.3 From cbde7be900d2a2279cbc4becb91d1ddd6a014def Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= Date: Fri, 19 Feb 2021 18:40:12 +0000 Subject: migrate: remove QMP/HMP commands for speed, downtime and cache size MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The generic 'migrate_set_parameters' command handle all types of param. Only the QMP commands were documented in the deprecations page, but the rationale for deprecating applies equally to HMP, and the replacements exist. Furthermore the HMP commands are just shims to the QMP commands, so removing the latter breaks the former unless they get re-implemented. Reviewed-by: Dr. David Alan Gilbert Signed-off-by: Daniel P. Berrangé --- qapi/migration.json | 98 ----------------------------------------------------- 1 file changed, 98 deletions(-) (limited to 'qapi') diff --git a/qapi/migration.json b/qapi/migration.json index 6e5943fbb4..9bf0bc4d25 100644 --- a/qapi/migration.json +++ b/qapi/migration.json @@ -1398,104 +1398,6 @@ ## { 'command': 'migrate-continue', 'data': {'state': 'MigrationStatus'} } -## -# @migrate_set_downtime: -# -# Set maximum tolerated downtime for migration. -# -# @value: maximum downtime in seconds -# -# Features: -# @deprecated: This command is deprecated. Use -# 'migrate-set-parameters' instead. -# -# Returns: nothing on success -# -# Since: 0.14 -# -# Example: -# -# -> { "execute": "migrate_set_downtime", "arguments": { "value": 0.1 } } -# <- { "return": {} } -# -## -{ 'command': 'migrate_set_downtime', 'data': {'value': 'number'}, - 'features': [ 'deprecated' ] } - -## -# @migrate_set_speed: -# -# Set maximum speed for migration. -# -# @value: maximum speed in bytes per second. -# -# Features: -# @deprecated: This command is deprecated. Use -# 'migrate-set-parameters' instead. -# -# Returns: nothing on success -# -# Since: 0.14 -# -# Example: -# -# -> { "execute": "migrate_set_speed", "arguments": { "value": 1024 } } -# <- { "return": {} } -# -## -{ 'command': 'migrate_set_speed', 'data': {'value': 'int'}, - 'features': [ 'deprecated' ] } - -## -# @migrate-set-cache-size: -# -# Set cache size to be used by XBZRLE migration -# -# @value: cache size in bytes -# -# Features: -# @deprecated: This command is deprecated. Use -# 'migrate-set-parameters' instead. -# -# The size will be rounded down to the nearest power of 2. -# The cache size can be modified before and during ongoing migration -# -# Returns: nothing on success -# -# Since: 1.2 -# -# Example: -# -# -> { "execute": "migrate-set-cache-size", -# "arguments": { "value": 536870912 } } -# <- { "return": {} } -# -## -{ 'command': 'migrate-set-cache-size', 'data': {'value': 'int'}, - 'features': [ 'deprecated' ] } - -## -# @query-migrate-cache-size: -# -# Query migration XBZRLE cache size -# -# Features: -# @deprecated: This command is deprecated. Use -# 'query-migrate-parameters' instead. -# -# Returns: XBZRLE cache size in bytes -# -# Since: 1.2 -# -# Example: -# -# -> { "execute": "query-migrate-cache-size" } -# <- { "return": 67108864 } -# -## -{ 'command': 'query-migrate-cache-size', 'returns': 'size', - 'features': [ 'deprecated' ] } - ## # @migrate: # -- cgit v1.2.3 From 8af54b9172ff3b9bbdbb3191ed84994d275a0d81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= Date: Mon, 22 Feb 2021 12:54:55 +0000 Subject: machine: remove 'query-cpus' QMP command MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The newer 'query-cpus-fast' command avoids side effects on the guest execution. Note that some of the field names are different in the 'query-cpus-fast' command. Reviewed-by: Wainer dos Santos Moschetta Tested-by: Wainer dos Santos Moschetta Signed-off-by: Daniel P. Berrangé --- qapi/machine.json | 161 +----------------------------------------------------- 1 file changed, 2 insertions(+), 159 deletions(-) (limited to 'qapi') diff --git a/qapi/machine.json b/qapi/machine.json index 330189efe3..9811927504 100644 --- a/qapi/machine.json +++ b/qapi/machine.json @@ -38,7 +38,7 @@ # @CpuInfoArch: # # An enumeration of cpu types that enable additional information during -# @query-cpus and @query-cpus-fast. +# @query-cpus-fast. # # @s390: since 2.12 # @@ -49,114 +49,6 @@ { 'enum': 'CpuInfoArch', 'data': ['x86', 'sparc', 'ppc', 'mips', 'tricore', 's390', 'riscv', 'other' ] } -## -# @CpuInfo: -# -# Information about a virtual CPU -# -# @CPU: the index of the virtual CPU -# -# @current: this only exists for backwards compatibility and should be ignored -# -# @halted: true if the virtual CPU is in the halt state. Halt usually refers -# to a processor specific low power mode. -# -# @qom_path: path to the CPU object in the QOM tree (since 2.4) -# -# @thread_id: ID of the underlying host thread -# -# @props: properties describing to which node/socket/core/thread -# virtual CPU belongs to, provided if supported by board (since 2.10) -# -# @arch: architecture of the cpu, which determines which additional fields -# will be listed (since 2.6) -# -# Since: 0.14 -# -# Notes: @halted is a transient state that changes frequently. By the time the -# data is sent to the client, the guest may no longer be halted. -## -{ 'union': 'CpuInfo', - 'base': {'CPU': 'int', 'current': 'bool', 'halted': 'bool', - 'qom_path': 'str', 'thread_id': 'int', - '*props': 'CpuInstanceProperties', 'arch': 'CpuInfoArch' }, - 'discriminator': 'arch', - 'data': { 'x86': 'CpuInfoX86', - 'sparc': 'CpuInfoSPARC', - 'ppc': 'CpuInfoPPC', - 'mips': 'CpuInfoMIPS', - 'tricore': 'CpuInfoTricore', - 's390': 'CpuInfoS390', - 'riscv': 'CpuInfoRISCV' } } - -## -# @CpuInfoX86: -# -# Additional information about a virtual i386 or x86_64 CPU -# -# @pc: the 64-bit instruction pointer -# -# Since: 2.6 -## -{ 'struct': 'CpuInfoX86', 'data': { 'pc': 'int' } } - -## -# @CpuInfoSPARC: -# -# Additional information about a virtual SPARC CPU -# -# @pc: the PC component of the instruction pointer -# -# @npc: the NPC component of the instruction pointer -# -# Since: 2.6 -## -{ 'struct': 'CpuInfoSPARC', 'data': { 'pc': 'int', 'npc': 'int' } } - -## -# @CpuInfoPPC: -# -# Additional information about a virtual PPC CPU -# -# @nip: the instruction pointer -# -# Since: 2.6 -## -{ 'struct': 'CpuInfoPPC', 'data': { 'nip': 'int' } } - -## -# @CpuInfoMIPS: -# -# Additional information about a virtual MIPS CPU -# -# @PC: the instruction pointer -# -# Since: 2.6 -## -{ 'struct': 'CpuInfoMIPS', 'data': { 'PC': 'int' } } - -## -# @CpuInfoTricore: -# -# Additional information about a virtual Tricore CPU -# -# @PC: the instruction pointer -# -# Since: 2.6 -## -{ 'struct': 'CpuInfoTricore', 'data': { 'PC': 'int' } } - -## -# @CpuInfoRISCV: -# -# Additional information about a virtual RISCV CPU -# -# @pc: the instruction pointer -# -# Since 2.12 -## -{ 'struct': 'CpuInfoRISCV', 'data': { 'pc': 'int' } } - ## # @CpuS390State: # @@ -180,53 +72,6 @@ ## { 'struct': 'CpuInfoS390', 'data': { 'cpu-state': 'CpuS390State' } } -## -# @query-cpus: -# -# Returns a list of information about each virtual CPU. -# -# This command causes vCPU threads to exit to userspace, which causes -# a small interruption to guest CPU execution. This will have a negative -# impact on realtime guests and other latency sensitive guest workloads. -# -# Features: -# @deprecated: This command is deprecated, because it interferes with -# the guest. Use 'query-cpus-fast' instead to avoid the vCPU -# interruption. -# -# Returns: a list of @CpuInfo for each virtual CPU -# -# Since: 0.14 -# -# Example: -# -# -> { "execute": "query-cpus" } -# <- { "return": [ -# { -# "CPU":0, -# "current":true, -# "halted":false, -# "qom_path":"/machine/unattached/device[0]", -# "arch":"x86", -# "pc":3227107138, -# "thread_id":3134 -# }, -# { -# "CPU":1, -# "current":false, -# "halted":true, -# "qom_path":"/machine/unattached/device[2]", -# "arch":"x86", -# "pc":7108165, -# "thread_id":3135 -# } -# ] -# } -# -## -{ 'command': 'query-cpus', 'returns': ['CpuInfo'], - 'features': [ 'deprecated' ] } - ## # @CpuInfoFast: # @@ -266,9 +111,7 @@ ## # @query-cpus-fast: # -# Returns information about all virtual CPUs. This command does not -# incur a performance penalty and should be used in production -# instead of query-cpus. +# Returns information about all virtual CPUs. # # Returns: list of @CpuInfoFast # -- cgit v1.2.3 From 445a5b4087567bf4d4ce76d394adf78d9d5c88a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= Date: Mon, 22 Feb 2021 13:29:31 +0000 Subject: machine: remove 'arch' field from 'query-cpus-fast' QMP command MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reviewed-by: Thomas Huth Signed-off-by: Daniel P. Berrangé --- qapi/machine.json | 22 ---------------------- 1 file changed, 22 deletions(-) (limited to 'qapi') diff --git a/qapi/machine.json b/qapi/machine.json index 9811927504..c0c52aef10 100644 --- a/qapi/machine.json +++ b/qapi/machine.json @@ -34,21 +34,6 @@ 'sh4eb', 'sparc', 'sparc64', 'tricore', 'unicore32', 'x86_64', 'xtensa', 'xtensaeb' ] } -## -# @CpuInfoArch: -# -# An enumeration of cpu types that enable additional information during -# @query-cpus-fast. -# -# @s390: since 2.12 -# -# @riscv: since 2.12 -# -# Since: 2.6 -## -{ 'enum': 'CpuInfoArch', - 'data': ['x86', 'sparc', 'ppc', 'mips', 'tricore', 's390', 'riscv', 'other' ] } - ## # @CpuS390State: # @@ -86,14 +71,9 @@ # @props: properties describing to which node/socket/core/thread # virtual CPU belongs to, provided if supported by board # -# @arch: base architecture of the cpu -# # @target: the QEMU system emulation target, which determines which # additional fields will be listed (since 3.0) # -# Features: -# @deprecated: Member @arch is deprecated. Use @target instead. -# # Since: 2.12 # ## @@ -102,8 +82,6 @@ 'qom-path' : 'str', 'thread-id' : 'int', '*props' : 'CpuInstanceProperties', - 'arch' : { 'type': 'CpuInfoArch', - 'features': [ 'deprecated' ] }, 'target' : 'SysEmuTarget' }, 'discriminator' : 'target', 'data' : { 's390x' : 'CpuInfoS390' } } -- cgit v1.2.3 From ad1324e044240ae9fcf67e4c215481b7a35591b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= Date: Fri, 19 Feb 2021 18:53:17 +0000 Subject: block: remove 'encryption_key_missing' flag from QAPI MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This has been hardcoded to "false" since 2.10.0, since secrets required to unlock block devices are now always provided up front instead of using interactive prompts. Reviewed-by: Eric Blake Reviewed-by: Thomas Huth Signed-off-by: Daniel P. Berrangé --- qapi/block-core.json | 8 -------- 1 file changed, 8 deletions(-) (limited to 'qapi') diff --git a/qapi/block-core.json b/qapi/block-core.json index 9f555d5c1d..d256b7b776 100644 --- a/qapi/block-core.json +++ b/qapi/block-core.json @@ -319,8 +319,6 @@ # # @encrypted: true if the backing device is encrypted # -# @encryption_key_missing: always false -# # @detect_zeroes: detect and optimize zero writes (Since 2.1) # # @bps: total throughput limit in bytes per second is specified @@ -385,10 +383,6 @@ # @dirty-bitmaps: dirty bitmaps information (only present if node # has one or more dirty bitmaps) (Since 4.2) # -# Features: -# @deprecated: Member @encryption_key_missing is deprecated. It is -# always false. -# # Since: 0.14 # ## @@ -396,8 +390,6 @@ 'data': { 'file': 'str', '*node-name': 'str', 'ro': 'bool', 'drv': 'str', '*backing_file': 'str', 'backing_file_depth': 'int', 'encrypted': 'bool', - 'encryption_key_missing': { 'type': 'bool', - 'features': [ 'deprecated' ] }, 'detect_zeroes': 'BlockdevDetectZeroesOptions', 'bps': 'int', 'bps_rd': 'int', 'bps_wr': 'int', 'iops': 'int', 'iops_rd': 'int', 'iops_wr': 'int', -- cgit v1.2.3 From 81cbfd5088690c53541ffd0d74851c8ab055a829 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= Date: Fri, 19 Feb 2021 19:19:54 +0000 Subject: block: remove dirty bitmaps 'status' field MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The same information is available via the 'recording' and 'busy' fields. Reviewed-by: Vladimir Sementsov-Ogievskiy Signed-off-by: Daniel P. Berrangé --- qapi/block-core.json | 45 --------------------------------------------- 1 file changed, 45 deletions(-) (limited to 'qapi') diff --git a/qapi/block-core.json b/qapi/block-core.json index d256b7b776..2a0c345c2c 100644 --- a/qapi/block-core.json +++ b/qapi/block-core.json @@ -418,43 +418,6 @@ ## { 'enum': 'BlockDeviceIoStatus', 'data': [ 'ok', 'failed', 'nospace' ] } -## -# @DirtyBitmapStatus: -# -# An enumeration of possible states that a dirty bitmap can report to the user. -# -# @frozen: The bitmap is currently in-use by some operation and is immutable. -# If the bitmap was @active prior to the operation, new writes by the -# guest are being recorded in a temporary buffer, and will not be lost. -# Generally, bitmaps are cleared on successful use in an operation and -# the temporary buffer is committed into the bitmap. On failure, the -# temporary buffer is merged back into the bitmap without first -# clearing it. -# Please refer to the documentation for each bitmap-using operation, -# See also @blockdev-backup, @drive-backup. -# -# @disabled: The bitmap is not currently recording new writes by the guest. -# This is requested explicitly via @block-dirty-bitmap-disable. -# It can still be cleared, deleted, or used for backup operations. -# -# @active: The bitmap is actively monitoring for new writes, and can be cleared, -# deleted, or used for backup operations. -# -# @locked: The bitmap is currently in-use by some operation and is immutable. -# If the bitmap was @active prior to the operation, it is still -# recording new writes. If the bitmap was @disabled, it is not -# recording new writes. (Since 2.12) -# -# @inconsistent: This is a persistent dirty bitmap that was marked in-use on -# disk, and is unusable by QEMU. It can only be deleted. -# Please rely on the inconsistent field in @BlockDirtyInfo -# instead, as the status field is deprecated. (Since 4.0) -# -# Since: 2.4 -## -{ 'enum': 'DirtyBitmapStatus', - 'data': ['active', 'disabled', 'frozen', 'locked', 'inconsistent'] } - ## # @BlockDirtyInfo: # @@ -466,8 +429,6 @@ # # @granularity: granularity of the dirty bitmap in bytes (since 1.4) # -# @status: current status of the dirty bitmap (since 2.4) -# # @recording: true if the bitmap is recording new writes from the guest. # Replaces `active` and `disabled` statuses. (since 4.0) # @@ -483,17 +444,11 @@ # @busy to be false. This bitmap cannot be used. To remove # it, use @block-dirty-bitmap-remove. (Since 4.0) # -# Features: -# @deprecated: Member @status is deprecated. Use @recording and -# @locked instead. -# # Since: 1.3 ## { 'struct': 'BlockDirtyInfo', 'data': {'*name': 'str', 'count': 'int', 'granularity': 'uint32', 'recording': 'bool', 'busy': 'bool', - 'status': { 'type': 'DirtyBitmapStatus', - 'features': [ 'deprecated' ] }, 'persistent': 'bool', '*inconsistent': 'bool' } } ## -- cgit v1.2.3 From e67d8e2928200e24ecb47c7be3ea8270077f2996 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= Date: Fri, 19 Feb 2021 19:22:36 +0000 Subject: block: remove 'dirty-bitmaps' field from 'BlockInfo' struct MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The same data is available in the 'BlockDeviceInfo' struct. Reviewed-by: Vladimir Sementsov-Ogievskiy Signed-off-by: Daniel P. Berrangé --- qapi/block-core.json | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) (limited to 'qapi') diff --git a/qapi/block-core.json b/qapi/block-core.json index 2a0c345c2c..0399449e13 100644 --- a/qapi/block-core.json +++ b/qapi/block-core.json @@ -539,9 +539,6 @@ # @tray_open: True if the device's tray is open # (only present if it has a tray) # -# @dirty-bitmaps: dirty bitmaps information (only present if the -# driver has one or more dirty bitmaps) (Since 2.0) -# # @io-status: @BlockDeviceIoStatus. Only present if the device # supports it and the VM is configured to stop on errors # (supported device models: virtio-blk, IDE, SCSI except @@ -550,18 +547,12 @@ # @inserted: @BlockDeviceInfo describing the device if media is # present # -# Features: -# @deprecated: Member @dirty-bitmaps is deprecated. Use @inserted -# member @dirty-bitmaps instead. -# # Since: 0.14 ## { 'struct': 'BlockInfo', 'data': {'device': 'str', '*qdev': 'str', 'type': 'str', 'removable': 'bool', 'locked': 'bool', '*inserted': 'BlockDeviceInfo', - '*tray_open': 'bool', '*io-status': 'BlockDeviceIoStatus', - '*dirty-bitmaps': { 'type': ['BlockDirtyInfo'], - 'features': [ 'deprecated' ] } } } + '*tray_open': 'bool', '*io-status': 'BlockDeviceIoStatus' } } ## # @BlockMeasureInfo: -- cgit v1.2.3