qapi: Remove deprecated 'singlestep' member of StatusInfo

This member has been deprecated before the 8.1 release, in commit
34c18203d4 ("qmp: Deprecate 'singlestep' member of StatusInfo").
Time to drop it.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Message-ID: <20240117151430.29235-2-philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
This commit is contained in:
Philippe Mathieu-Daudé 2024-01-17 16:14:28 +01:00 committed by Thomas Huth
parent 1e7886e9e2
commit fe17522d85
7 changed files with 9 additions and 42 deletions

View File

@ -151,20 +151,6 @@ accepted incorrect commands will return an error. Users should make sure that
all arguments passed to ``device_add`` are consistent with the documented all arguments passed to ``device_add`` are consistent with the documented
property types. property types.
``StatusInfo`` member ``singlestep`` (since 8.1)
''''''''''''''''''''''''''''''''''''''''''''''''
The ``singlestep`` member of the ``StatusInfo`` returned from the
``query-status`` command is deprecated. This member has a confusing
name and it never did what the documentation claimed or what its name
suggests. We do not believe that anybody is actually using the
information provided in this member.
The information it reports is whether the TCG JIT is in "one
instruction per translated block" mode (which can be set on the
command line or via the HMP, but not via QMP). The information remains
available via the HMP 'info jit' command.
QEMU Machine Protocol (QMP) events QEMU Machine Protocol (QMP) events
---------------------------------- ----------------------------------

View File

@ -106,25 +106,15 @@
# #
# @running: true if all VCPUs are runnable, false if not runnable # @running: true if all VCPUs are runnable, false if not runnable
# #
# @singlestep: true if using TCG with one guest instruction per
# translation block
#
# @status: the virtual machine @RunState # @status: the virtual machine @RunState
# #
# Features: # Features:
# #
# @deprecated: Member 'singlestep' is deprecated (with no
# replacement).
#
# Since: 0.14 # Since: 0.14
# #
# Notes: @singlestep is enabled on the command line with '-accel
# tcg,one-insn-per-tb=on', or with the HMP 'one-insn-per-tb'
# command.
## ##
{ 'struct': 'StatusInfo', { 'struct': 'StatusInfo',
'data': {'running': 'bool', 'data': {'running': 'bool',
'singlestep': { 'type': 'bool', 'features': [ 'deprecated' ]},
'status': 'RunState'} } 'status': 'RunState'} }
## ##
@ -140,7 +130,6 @@
# #
# -> { "execute": "query-status" } # -> { "execute": "query-status" }
# <- { "return": { "running": true, # <- { "return": { "running": true,
# "singlestep": false,
# "status": "running" } } # "status": "running" } }
## ##
{ 'command': 'query-status', 'returns': 'StatusInfo', { 'command': 'query-status', 'returns': 'StatusInfo',

View File

@ -242,15 +242,7 @@ bool runstate_needs_reset(void)
StatusInfo *qmp_query_status(Error **errp) StatusInfo *qmp_query_status(Error **errp)
{ {
StatusInfo *info = g_malloc0(sizeof(*info)); StatusInfo *info = g_malloc0(sizeof(*info));
AccelState *accel = current_accel();
/*
* We ignore errors, which will happen if the accelerator
* is not TCG. "singlestep" is meaningless for other accelerators,
* so we will set the StatusInfo field to false for those.
*/
info->singlestep = object_property_get_bool(OBJECT(accel),
"one-insn-per-tb", NULL);
info->running = runstate_is_running(); info->running = runstate_is_running();
info->status = current_run_state; info->status = current_run_state;

View File

@ -30,13 +30,13 @@ read 65536/65536 bytes at offset 0
'arguments': { 'uri': 'unix:SOCK_DIR/migrate', 'blk': true } } 'arguments': { 'uri': 'unix:SOCK_DIR/migrate', 'blk': true } }
{"return": {}} {"return": {}}
{ 'execute': 'query-status' } { 'execute': 'query-status' }
{"return": {"status": "postmigrate", "singlestep": false, "running": false}} {"return": {"status": "postmigrate", "running": false}}
=== Do some I/O on the destination === === Do some I/O on the destination ===
{ 'execute': 'query-status' } { 'execute': 'query-status' }
{"timestamp": {"seconds": TIMESTAMP, "microseconds": TIMESTAMP}, "event": "RESUME"} {"timestamp": {"seconds": TIMESTAMP, "microseconds": TIMESTAMP}, "event": "RESUME"}
{"return": {"status": "running", "singlestep": false, "running": true}} {"return": {"status": "running", "running": true}}
{ 'execute': 'human-monitor-command', { 'execute': 'human-monitor-command',
'arguments': { 'command-line': 'arguments': { 'command-line':
'qemu-io disk "read -P 0x55 0 64k"' } } 'qemu-io disk "read -P 0x55 0 64k"' } }

View File

@ -15,8 +15,8 @@ Starting migration to B...
{"data": {"status": "completed"}, "event": "MIGRATION", "timestamp": {"microseconds": "USECS", "seconds": "SECS"}} {"data": {"status": "completed"}, "event": "MIGRATION", "timestamp": {"microseconds": "USECS", "seconds": "SECS"}}
completed completed
completed completed
{"return": {"running": false, "singlestep": false, "status": "postmigrate"}} {"return": {"running": false, "status": "postmigrate"}}
{"return": {"running": true, "singlestep": false, "status": "running"}} {"return": {"running": true, "status": "running"}}
Add a second parent to drive0-file... Add a second parent to drive0-file...
{"return": {}} {"return": {}}
Restart A with -incoming and second parent... Restart A with -incoming and second parent...
@ -32,5 +32,5 @@ Starting migration back to A...
{"data": {"status": "completed"}, "event": "MIGRATION", "timestamp": {"microseconds": "USECS", "seconds": "SECS"}} {"data": {"status": "completed"}, "event": "MIGRATION", "timestamp": {"microseconds": "USECS", "seconds": "SECS"}}
completed completed
completed completed
{"return": {"running": true, "singlestep": false, "status": "running"}} {"return": {"running": true, "status": "running"}}
{"return": {"running": false, "singlestep": false, "status": "postmigrate"}} {"return": {"running": false, "status": "postmigrate"}}

View File

@ -13,5 +13,5 @@ Starting migration to B...
{"data": {"status": "completed"}, "event": "MIGRATION", "timestamp": {"microseconds": "USECS", "seconds": "SECS"}} {"data": {"status": "completed"}, "event": "MIGRATION", "timestamp": {"microseconds": "USECS", "seconds": "SECS"}}
completed completed
completed completed
{"return": {"running": false, "singlestep": false, "status": "postmigrate"}} {"return": {"running": false, "status": "postmigrate"}}
{"return": {"running": true, "singlestep": false, "status": "running"}} {"return": {"running": true, "status": "running"}}

View File

@ -12,7 +12,7 @@ Enabling migration QMP events on VM...
VM is now stopped: VM is now stopped:
completed completed
{"execute": "query-status", "arguments": {}} {"execute": "query-status", "arguments": {}}
{"return": {"running": false, "singlestep": false, "status": "postmigrate"}} {"return": {"running": false, "status": "postmigrate"}}
=== Create a snapshot of the disk image === === Create a snapshot of the disk image ===
{"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "file", "filename": "TEST_DIR/PID-top", "size": 0}}} {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "file", "filename": "TEST_DIR/PID-top", "size": 0}}}