Message ID | 20190502081554.5521-25-arilou@gmail.com |
---|---|
State | New |
Headers | show |
Series | gdbstub: Refactor command packets handler | expand |
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
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
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
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)
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(+)