Browse Source

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>
coverity
Philippe Mathieu-Daudé 2 years ago
committed by Thomas Huth
parent
commit
fe17522d85
  1. 14
      docs/about/deprecated.rst
  2. 11
      qapi/run-state.json
  3. 8
      system/runstate.c
  4. 4
      tests/qemu-iotests/183.out
  5. 8
      tests/qemu-iotests/234.out
  6. 4
      tests/qemu-iotests/262.out
  7. 2
      tests/qemu-iotests/280.out

14
docs/about/deprecated.rst

@ -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
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
----------------------------------

11
qapi/run-state.json

@ -106,25 +106,15 @@
#
# @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
#
# Features:
#
# @deprecated: Member 'singlestep' is deprecated (with no
# replacement).
#
# 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',
'data': {'running': 'bool',
'singlestep': { 'type': 'bool', 'features': [ 'deprecated' ]},
'status': 'RunState'} }
##
@ -140,7 +130,6 @@
#
# -> { "execute": "query-status" }
# <- { "return": { "running": true,
# "singlestep": false,
# "status": "running" } }
##
{ 'command': 'query-status', 'returns': 'StatusInfo',

8
system/runstate.c

@ -242,15 +242,7 @@ bool runstate_needs_reset(void)
StatusInfo *qmp_query_status(Error **errp)
{
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->status = current_run_state;

4
tests/qemu-iotests/183.out

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

8
tests/qemu-iotests/234.out

@ -15,8 +15,8 @@ Starting migration to B...
{"data": {"status": "completed"}, "event": "MIGRATION", "timestamp": {"microseconds": "USECS", "seconds": "SECS"}}
completed
completed
{"return": {"running": false, "singlestep": false, "status": "postmigrate"}}
{"return": {"running": true, "singlestep": false, "status": "running"}}
{"return": {"running": false, "status": "postmigrate"}}
{"return": {"running": true, "status": "running"}}
Add a second parent to drive0-file...
{"return": {}}
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"}}
completed
completed
{"return": {"running": true, "singlestep": false, "status": "running"}}
{"return": {"running": false, "singlestep": false, "status": "postmigrate"}}
{"return": {"running": true, "status": "running"}}
{"return": {"running": false, "status": "postmigrate"}}

4
tests/qemu-iotests/262.out

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

2
tests/qemu-iotests/280.out

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

Loading…
Cancel
Save