Message ID | 20230105164320.2164095-17-alex.bennee@linaro.org |
---|---|
State | Superseded |
Headers | show |
Series | gdbstub: re-organise to for better compilation behaviour | expand |
On 5/1/23 17:43, Alex Bennée wrote: > Currently we only support replay for softmmu mode so it is a constant > false for user-mode. > > Signed-off-by: Alex Bennée <alex.bennee@linaro.org> > --- > gdbstub/internals.h | 1 + > gdbstub/gdbstub.c | 13 ++----------- > gdbstub/softmmu.c | 5 +++++ > gdbstub/user.c | 5 +++++ > 4 files changed, 13 insertions(+), 11 deletions(-) > > diff --git a/gdbstub/internals.h b/gdbstub/internals.h > index a371373c1d..1def9dfc9c 100644 > --- a/gdbstub/internals.h > +++ b/gdbstub/internals.h > @@ -126,6 +126,7 @@ CPUState *gdb_first_attached_cpu(void); > void gdb_append_thread_id(CPUState *cpu, GString *buf); > int gdb_get_cpu_index(CPUState *cpu); > unsigned int gdb_get_max_cpus(void); /* both */ > +bool gdb_stub_can_reverse(void); /* softmmu, stub for user */ Maybe without the 'stub', gdb_can_reverse()? Anyhow, Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
On 1/5/23 08:43, Alex Bennée wrote: > Currently we only support replay for softmmu mode so it is a constant > false for user-mode. > > Signed-off-by: Alex Bennée<alex.bennee@linaro.org> > --- > gdbstub/internals.h | 1 + > gdbstub/gdbstub.c | 13 ++----------- > gdbstub/softmmu.c | 5 +++++ > gdbstub/user.c | 5 +++++ > 4 files changed, 13 insertions(+), 11 deletions(-) Reviewed-by: Richard Henderson <richard.henderson@linaro.org> r~
diff --git a/gdbstub/internals.h b/gdbstub/internals.h index a371373c1d..1def9dfc9c 100644 --- a/gdbstub/internals.h +++ b/gdbstub/internals.h @@ -126,6 +126,7 @@ CPUState *gdb_first_attached_cpu(void); void gdb_append_thread_id(CPUState *cpu, GString *buf); int gdb_get_cpu_index(CPUState *cpu); unsigned int gdb_get_max_cpus(void); /* both */ +bool gdb_stub_can_reverse(void); /* softmmu, stub for user */ void gdb_create_default_process(GDBState *s); diff --git a/gdbstub/gdbstub.c b/gdbstub/gdbstub.c index f9950200b8..c293b8e43c 100644 --- a/gdbstub/gdbstub.c +++ b/gdbstub/gdbstub.c @@ -113,15 +113,6 @@ int use_gdb_syscalls(void) return gdb_syscall_mode == GDB_SYS_ENABLED; } -static bool stub_can_reverse(void) -{ -#ifdef CONFIG_USER_ONLY - return false; -#else - return replay_mode == REPLAY_MODE_PLAY; -#endif -} - /* writes 2*len+1 bytes in buf */ void gdb_memtohex(GString *buf, const uint8_t *mem, int len) { @@ -1307,7 +1298,7 @@ static void handle_step(GArray *params, void *user_ctx) static void handle_backward(GArray *params, void *user_ctx) { - if (!stub_can_reverse()) { + if (!gdb_stub_can_reverse()) { gdb_put_packet("E22"); } if (params->len == 1) { @@ -1558,7 +1549,7 @@ static void handle_query_supported(GArray *params, void *user_ctx) g_string_append(gdbserver_state.str_buf, ";qXfer:features:read+"); } - if (stub_can_reverse()) { + if (gdb_stub_can_reverse()) { g_string_append(gdbserver_state.str_buf, ";ReverseStep+;ReverseContinue+"); } diff --git a/gdbstub/softmmu.c b/gdbstub/softmmu.c index 015848358a..ff18611ce7 100644 --- a/gdbstub/softmmu.c +++ b/gdbstub/softmmu.c @@ -446,6 +446,11 @@ unsigned int gdb_get_max_cpus(void) return ms->smp.max_cpus; } +bool gdb_stub_can_reverse(void) +{ + return replay_mode == REPLAY_MODE_PLAY; +} + /* * Softmmu specific command helpers */ diff --git a/gdbstub/user.c b/gdbstub/user.c index 9556a272d7..ccc73683de 100644 --- a/gdbstub/user.c +++ b/gdbstub/user.c @@ -407,6 +407,11 @@ unsigned int gdb_get_max_cpus(void) return max_cpus; } +/* replay not supported for user-mode */ +bool gdb_stub_can_reverse(void) +{ + return false; +} /* * Break/Watch point helpers
Currently we only support replay for softmmu mode so it is a constant false for user-mode. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> --- gdbstub/internals.h | 1 + gdbstub/gdbstub.c | 13 ++----------- gdbstub/softmmu.c | 5 +++++ gdbstub/user.c | 5 +++++ 4 files changed, 13 insertions(+), 11 deletions(-)