[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v9 05/27] gdbstub: Implement continue with signa
From: |
Alex Bennée |
Subject: |
Re: [Qemu-devel] [PATCH v9 05/27] gdbstub: Implement continue with signal (C pkt) with new infra |
Date: |
Wed, 15 May 2019 10:43:48 +0100 |
User-agent: |
mu4e 1.3.1; emacs 26.1 |
Jon Doron <address@hidden> writes:
> Signed-off-by: Jon Doron <address@hidden>
> ---
> gdbstub.c | 30 +++++++++++++++++++++++++-----
> 1 file changed, 25 insertions(+), 5 deletions(-)
>
> diff --git a/gdbstub.c b/gdbstub.c
> index 89f1ab6524..469aaeb875 100644
> --- a/gdbstub.c
> +++ b/gdbstub.c
> @@ -1532,6 +1532,21 @@ static void handle_continue(GdbCmdContext *gdb_ctx,
> void *user_ctx)
> gdb_continue(gdb_ctx->s);
> }
It might be worth adding a comment that we don't currently support the:
C sig;[addr]
form of continue packet here, which we didn't before so:
Reviewed-by: Alex Bennée <address@hidden>
>
> +static void handle_cont_with_sig(GdbCmdContext *gdb_ctx, void *user_ctx)
> +{
> + unsigned long signal = 0;
> +
> + if (gdb_ctx->num_params) {
> + signal = gdb_ctx->params[0].val_ul;
> + }
> +
> + gdb_ctx->s->signal = gdb_signal_to_target(signal);
> + if (gdb_ctx->s->signal == -1) {
> + gdb_ctx->s->signal = 0;
> + }
> + gdb_continue(gdb_ctx->s);
> +}
> +
> static int gdb_handle_packet(GDBState *s, const char *line_buf)
> {
> CPUState *cpu;
> @@ -1579,11 +1594,16 @@ static int gdb_handle_packet(GDBState *s, const char
> *line_buf)
> }
> break;
> case 'C':
> - s->signal = gdb_signal_to_target (strtoul(p, (char **)&p, 16));
> - if (s->signal == -1)
> - s->signal = 0;
> - gdb_continue(s);
> - return RS_IDLE;
> + {
> + static const GdbCmdParseEntry cont_with_sig_cmd_desc = {
> + .handler = handle_cont_with_sig,
> + .cmd = "C",
> + .cmd_startswith = 1,
> + .schema = "l0"
> + };
> + cmd_parser = &cont_with_sig_cmd_desc;
> + }
> + break;
> case 'v':
> if (strncmp(p, "Cont", 4) == 0) {
> p += 4;
--
Alex Bennée
- [Qemu-devel] [PATCH v9 23/27] gdbstub: Implement qemu physical memory mode, (continued)
- [Qemu-devel] [PATCH v9 19/27] gdbstub: Implement generic set (Q pkt) with new infra, Jon Doron, 2019/05/02
- [Qemu-devel] [PATCH v9 18/27] gdbstub: Implement generic query (q pkt) with new infra, Jon Doron, 2019/05/02
- [Qemu-devel] [PATCH v9 05/27] gdbstub: Implement continue with signal (C pkt) with new infra, Jon Doron, 2019/05/02
- Re: [Qemu-devel] [PATCH v9 05/27] gdbstub: Implement continue with signal (C pkt) with new infra,
Alex Bennée <=
- [Qemu-devel] [PATCH v9 13/27] gdbstub: Implement write all registers (G pkt) with new infra, Jon Doron, 2019/05/02
- [Qemu-devel] [PATCH v9 24/27] gdbstub: Add another handler for setting qemu.sstep, Jon Doron, 2019/05/02
[Qemu-devel] [PATCH v9 15/27] gdbstub: Implement file io (F pkt) with new infra, Jon Doron, 2019/05/02