[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v8 14/16] gdbstub: gdb_set_stop_cpu: ignore request
From: |
Luc Michel |
Subject: |
[Qemu-devel] [PATCH v8 14/16] gdbstub: gdb_set_stop_cpu: ignore request when process is not attached |
Date: |
Fri, 7 Dec 2018 10:01:32 +0100 |
When gdb_set_stop_cpu() is called with a CPU associated to a process
currently not attached by the GDB client, return without modifying the
stop CPU. Otherwise, GDB gets confused if it receives packets with a
thread-id it does not know about.
Signed-off-by: Luc Michel <address@hidden>
Acked-by: Alistair Francis <address@hidden>
Reviewed-by: Edgar E. Iglesias <address@hidden>
---
gdbstub.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/gdbstub.c b/gdbstub.c
index 81e7742847..48b49195f7 100644
--- a/gdbstub.c
+++ b/gdbstub.c
@@ -1796,10 +1796,19 @@ static int gdb_handle_packet(GDBState *s, const char
*line_buf)
return RS_IDLE;
}
void gdb_set_stop_cpu(CPUState *cpu)
{
+ GDBProcess *p = gdb_get_cpu_process(gdbserver_state, cpu);
+
+ if (!p->attached) {
+ /* Having a stop CPU corresponding to a process that is not attached
+ * confuses GDB. So we ignore the request.
+ */
+ return;
+ }
+
gdbserver_state->c_cpu = cpu;
gdbserver_state->g_cpu = cpu;
}
#ifndef CONFIG_USER_ONLY
--
2.19.2
- [Qemu-devel] [PATCH v8 02/16] gdbstub: introduce GDB processes, (continued)
- [Qemu-devel] [PATCH v8 02/16] gdbstub: introduce GDB processes, Luc Michel, 2018/12/07
- [Qemu-devel] [PATCH v8 08/16] gdbstub: add multiprocess support to Xfer:features:read:, Luc Michel, 2018/12/07
- [Qemu-devel] [PATCH v8 04/16] gdbstub: add multiprocess support to 'H' and 'T' packets, Luc Michel, 2018/12/07
- [Qemu-devel] [PATCH v8 05/16] gdbstub: add multiprocess support to vCont packets, Luc Michel, 2018/12/07
- [Qemu-devel] [PATCH v8 12/16] gdbstub: add support for vAttach packets, Luc Michel, 2018/12/07
- [Qemu-devel] [PATCH v8 13/16] gdbstub: processes initialization on new peer connection, Luc Michel, 2018/12/07
- [Qemu-devel] [PATCH v8 16/16] arm/xlnx-zynqmp: put APUs and RPUs in separate CPU clusters, Luc Michel, 2018/12/07
- [Qemu-devel] [PATCH v8 01/16] hw/cpu: introduce CPU clusters, Luc Michel, 2018/12/07
- [Qemu-devel] [PATCH v8 10/16] gdbstub: add multiprocess support to 'D' packets, Luc Michel, 2018/12/07
- [Qemu-devel] [PATCH v8 14/16] gdbstub: gdb_set_stop_cpu: ignore request when process is not attached,
Luc Michel <=
- [Qemu-devel] [PATCH v8 15/16] gdbstub: add multiprocess extension support, Luc Michel, 2018/12/07
- [Qemu-devel] [PATCH v8 11/16] gdbstub: add support for extended mode packet, Luc Michel, 2018/12/07
- Re: [Qemu-devel] [PATCH v8 00/16] gdbstub: support for the multiprocess extension, Luc Michel, 2018/12/17