[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 29/38] gdbstub: Permit reverse step/break to provide stop response
From: |
Alex Bennée |
Subject: |
[PULL 29/38] gdbstub: Permit reverse step/break to provide stop response |
Date: |
Mon, 3 Jul 2023 14:44:18 +0100 |
From: Nicholas Piggin <npiggin@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-stable@nongnu.org
Cc: Matheus Tavares Bernardino <quic_mathbern@quicinc.com>
Cc: Alex Bennée <alex.bennee@linaro.org>
Cc: Taylor Simpson <tsimpson@quicinc.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Acked-by: Matheus Tavares Bernardino <quic_mathbern@quicinc.com>
Message-Id: <20230623035304.279833-1-npiggin@gmail.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20230630180423.558337-30-alex.bennee@linaro.org>
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
- [PULL 21/38] plugins: update lockstep to use g_memdup2, (continued)
- [PULL 21/38] plugins: update lockstep to use g_memdup2, Alex Bennée, 2023/07/03
- [PULL 28/38] gdbstub: lightly refactor connection to avoid snprintf, Alex Bennée, 2023/07/03
- [PULL 16/38] tests/avocado: update firmware to enable sbsa-ref/max, Alex Bennée, 2023/07/03
- [PULL 37/38] docs: Document security implications of debugging, Alex Bennée, 2023/07/03
- [PULL 19/38] plugins: force slow path when plugins instrument memory ops, Alex Bennée, 2023/07/03
- [PULL 33/38] linux-user: Emulate /proc/self/smaps, Alex Bennée, 2023/07/03
- [PULL 31/38] linux-user: Expose do_guest_openat() and do_guest_readlink(), Alex Bennée, 2023/07/03
- [PULL 13/38] tests/lcitool: add an explicit gcc-native package, Alex Bennée, 2023/07/03
- [PULL 27/38] docs/devel: introduce some key concepts for QOM development, Alex Bennée, 2023/07/03
- [PULL 20/38] plugins: fix memory leak while parsing options, Alex Bennée, 2023/07/03
- [PULL 29/38] gdbstub: Permit reverse step/break to provide stop response,
Alex Bennée <=
- [PULL 18/38] target/arm: make arm_casq_ptw CONFIG_TCG only, Alex Bennée, 2023/07/03
- [PULL 35/38] gdbstub: Report the actual qemu-user pid, Alex Bennée, 2023/07/03
- [PULL 24/38] include/hw/qdev-core: fixup kerneldoc annotations, Alex Bennée, 2023/07/03
- [PULL 26/38] docs/devel: split qom-api reference into new file, Alex Bennée, 2023/07/03
- [PULL 30/38] gdbstub: clean-up vcont handling to avoid goto, Alex Bennée, 2023/07/03
- [PULL 34/38] gdbstub: Expose gdb_get_process() and gdb_get_first_cpu_in_process(), Alex Bennée, 2023/07/03
- [PULL 36/38] gdbstub: Add support for info proc mappings, Alex Bennée, 2023/07/03