Add multiprocess extension support by enabling multiprocess mode when
the peer requests it, and by replying that we actually support it in the
qSupported reply packet.
Signed-off-by: Luc Michel <luc.michel@greensocs.com>
---
gdbstub.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/gdbstub.c b/gdbstub.c
index 6a55bf2785..d249803c8e 100644
--- a/gdbstub.c
+++ b/gdbstub.c
@@ -1688,15 +1688,19 @@ static int gdb_handle_packet(GDBState *s, const char *line_buf)
put_packet(s, "OK");
break;
}
#endif /* !CONFIG_USER_ONLY */
if (is_query_packet(p, "Supported", ':')) {
+ if (strstr(p, "multiprocess+")) {
+ s->multiprocess = true;
+ }
snprintf(buf, sizeof(buf), "PacketSize=%x", MAX_PACKET_LENGTH);
cc = CPU_GET_CLASS(first_cpu);
if (cc->gdb_core_xml_file != NULL) {
pstrcat(buf, sizeof(buf), ";qXfer:features:read+");
}
+ pstrcat(buf, sizeof(buf), ";multiprocess+");
put_packet(s, buf);
break;
}
if (strncmp(p, "Xfer:features:read:", 19) == 0) {
const char *xml;
--
2.18.0