mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 16:23:55 -06:00
replay: introduce breakpoint at the specified step
This patch introduces replay_break, replay_delete_break qmp and hmp commands. These commands allow stopping at the specified instruction. It may be useful for debugging when there are some known events that should be investigated. replay_break command has one argument - number of instructions executed since the start of the replay. replay_delete_break removes previously set breakpoint. Signed-off-by: Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru> Acked-by: Markus Armbruster <armbru@redhat.com> -- v4 changes: - removed useless error_free call Message-Id: <160174520606.12451.7056879546045599378.stgit@pasha-ThinkPad-X280> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
e3b09ad2b6
commit
e751067179
6 changed files with 175 additions and 0 deletions
|
@ -63,3 +63,39 @@
|
|||
##
|
||||
{ 'command': 'query-replay',
|
||||
'returns': 'ReplayInfo' }
|
||||
|
||||
##
|
||||
# @replay-break:
|
||||
#
|
||||
# Set replay breakpoint at instruction count @icount.
|
||||
# Execution stops when the specified instruction is reached.
|
||||
# There can be at most one breakpoint. When breakpoint is set, any prior
|
||||
# one is removed. The breakpoint may be set only in replay mode and only
|
||||
# "in the future", i.e. at instruction counts greater than the current one.
|
||||
# The current instruction count can be observed with @query-replay.
|
||||
#
|
||||
# @icount: instruction count to stop at
|
||||
#
|
||||
# Since: 5.2
|
||||
#
|
||||
# Example:
|
||||
#
|
||||
# -> { "execute": "replay-break", "data": { "icount": 220414 } }
|
||||
#
|
||||
##
|
||||
{ 'command': 'replay-break', 'data': { 'icount': 'int' } }
|
||||
|
||||
##
|
||||
# @replay-delete-break:
|
||||
#
|
||||
# Remove replay breakpoint which was set with @replay-break.
|
||||
# The command is ignored when there are no replay breakpoints.
|
||||
#
|
||||
# Since: 5.2
|
||||
#
|
||||
# Example:
|
||||
#
|
||||
# -> { "execute": "replay-delete-break" }
|
||||
#
|
||||
##
|
||||
{ 'command': 'replay-delete-break' }
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue