[Qemu-devel] [PATCH v9 24/27] gdbstub: Add another handler for setting qemu.sstep

Jon Doron posted 27 patches 6 years, 9 months ago
Maintainers: Paolo Bonzini <pbonzini@redhat.com>
There is a newer version of this series
[Qemu-devel] [PATCH v9 24/27] gdbstub: Add another handler for setting qemu.sstep
Posted by Jon Doron 6 years, 9 months ago
Follow GDB general query/set packet conventions, qemu.sstep can now
be set with the following command as well:
gdb> maint packet Qqemu.sstep:Value

Signed-off-by: Jon Doron <arilou@gmail.com>
---
 gdbstub.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/gdbstub.c b/gdbstub.c
index 88ff6224e6..34da10260d 100644
--- a/gdbstub.c
+++ b/gdbstub.c
@@ -2260,6 +2260,12 @@ static GdbCmdParseEntry gdb_gen_set_table[] = {
         .cmd_startswith = 1,
         .schema = "l0"
     },
+    {
+        .handler = handle_set_qemu_sstep,
+        .cmd = "qemu.sstep:",
+        .cmd_startswith = 1,
+        .schema = "l0"
+    },
 };
 
 static void handle_gen_query(GdbCmdContext *gdb_ctx, void *user_ctx)
-- 
2.20.1


Re: [Qemu-devel] [PATCH v9 24/27] gdbstub: Add another handler for setting qemu.sstep
Posted by Alex Bennée 6 years, 8 months ago
Jon Doron <arilou@gmail.com> writes:

> Follow GDB general query/set packet conventions, qemu.sstep can now
> be set with the following command as well:
> gdb> maint packet Qqemu.sstep:Value

I;m not sure about exposing internal values to a protocol like this.
Maybe text based flags would be better?

>
> Signed-off-by: Jon Doron <arilou@gmail.com>
> ---
>  gdbstub.c | 6 ++++++
>  1 file changed, 6 insertions(+)
>
> diff --git a/gdbstub.c b/gdbstub.c
> index 88ff6224e6..34da10260d 100644
> --- a/gdbstub.c
> +++ b/gdbstub.c
> @@ -2260,6 +2260,12 @@ static GdbCmdParseEntry gdb_gen_set_table[] = {
>          .cmd_startswith = 1,
>          .schema = "l0"
>      },
> +    {
> +        .handler = handle_set_qemu_sstep,
> +        .cmd = "qemu.sstep:",
> +        .cmd_startswith = 1,
> +        .schema = "l0"
> +    },

Hmm the implementation seems to have gone in earlier. These should be
together as a feature patch (along with changing the query/probe
responses).

>  };
>
>  static void handle_gen_query(GdbCmdContext *gdb_ctx, void *user_ctx)


--
Alex Bennée

Re: [Qemu-devel] [PATCH v9 24/27] gdbstub: Add another handler for setting qemu.sstep
Posted by Jon Doron 6 years, 8 months ago
On Wed, May 15, 2019 at 8:44 PM Alex Bennée <alex.bennee@linaro.org> wrote:
>
>
> Jon Doron <arilou@gmail.com> writes:
>
> > Follow GDB general query/set packet conventions, qemu.sstep can now
> > be set with the following command as well:
> > gdb> maint packet Qqemu.sstep:Value
>
> I;m not sure about exposing internal values to a protocol like this.
> Maybe text based flags would be better?
>

We kinda have to at this point as this was the original implementation
or we might end up breaking up the "API"
see commit: 60897d369f10b464720d8a6de4553c47943ea927

> >
> > Signed-off-by: Jon Doron <arilou@gmail.com>
> > ---
> >  gdbstub.c | 6 ++++++
> >  1 file changed, 6 insertions(+)
> >
> > diff --git a/gdbstub.c b/gdbstub.c
> > index 88ff6224e6..34da10260d 100644
> > --- a/gdbstub.c
> > +++ b/gdbstub.c
> > @@ -2260,6 +2260,12 @@ static GdbCmdParseEntry gdb_gen_set_table[] = {
> >          .cmd_startswith = 1,
> >          .schema = "l0"
> >      },
> > +    {
> > +        .handler = handle_set_qemu_sstep,
> > +        .cmd = "qemu.sstep:",
> > +        .cmd_startswith = 1,
> > +        .schema = "l0"
> > +    },
>
> Hmm the implementation seems to have gone in earlier. These should be
> together as a feature patch (along with changing the query/probe
> responses).
>
Done
> >  };
> >
> >  static void handle_gen_query(GdbCmdContext *gdb_ctx, void *user_ctx)
>
>
> --
> Alex Bennée

Re: [Qemu-devel] [PATCH v9 24/27] gdbstub: Add another handler for setting qemu.sstep
Posted by Alex Bennée 6 years, 8 months ago
Jon Doron <arilou@gmail.com> writes:

> On Wed, May 15, 2019 at 8:44 PM Alex Bennée <alex.bennee@linaro.org> wrote:
>>
>>
>> Jon Doron <arilou@gmail.com> writes:
>>
>> > Follow GDB general query/set packet conventions, qemu.sstep can now
>> > be set with the following command as well:
>> > gdb> maint packet Qqemu.sstep:Value
>>
>> I;m not sure about exposing internal values to a protocol like this.
>> Maybe text based flags would be better?
>>
>
> We kinda have to at this point as this was the original implementation
> or we might end up breaking up the "API"
> see commit: 60897d369f10b464720d8a6de4553c47943ea927

Ahh yes I see. TIL I guess ;-)

--
Alex Bennée