From: Nicholas Piggin <npig...@gmail.com> The final part of the reverse step and break handling is to bring the machine back to a debug stop state. gdb expects a response.
A gdb 'rsi' command hangs forever because the gdbstub filters out the response (also observable with reverse_debugging.py avocado tests). Fix by setting allow_stop_reply for the gdb backward packets. Fixes: 758370052fb ("gdbstub: only send stop-reply packets when allowed to") Cc: qemu-sta...@nongnu.org Cc: Matheus Tavares Bernardino <quic_mathb...@quicinc.com> Cc: Alex Bennée <alex.ben...@linaro.org> Cc: Taylor Simpson <tsimp...@quicinc.com> Signed-off-by: Nicholas Piggin <npig...@gmail.com> Acked-by: Matheus Tavares Bernardino <quic_mathb...@quicinc.com> Message-Id: <20230623035304.279833-1-npig...@gmail.com> Signed-off-by: Alex Bennée <alex.ben...@linaro.org> --- gdbstub/gdbstub.c | 1 + 1 file changed, 1 insertion(+) diff --git a/gdbstub/gdbstub.c b/gdbstub/gdbstub.c index be18568d0a..9496d7b175 100644 --- a/gdbstub/gdbstub.c +++ b/gdbstub/gdbstub.c @@ -1814,6 +1814,7 @@ static int gdb_handle_packet(const char *line_buf) .handler = handle_backward, .cmd = "b", .cmd_startswith = 1, + .allow_stop_reply = true, .schema = "o0" }; cmd_parser = &backward_cmd_desc; -- 2.39.2