diff options
author | Yao Qi <yao@codesourcery.com> | 2012-04-16 15:38:53 +0000 |
---|---|---|
committer | Yao Qi <yao@codesourcery.com> | 2012-04-16 15:38:53 +0000 |
commit | 80d269391b93449a7a61322326730b117d3211d9 (patch) | |
tree | 1733368403d5c98da97eb8975bee8eeb8a395017 /gdb/gdbserver/tracepoint.c | |
parent | cb4437b8911d52a7a4189597f0d349a9a2b777eb (diff) | |
download | fsf-binutils-gdb-80d269391b93449a7a61322326730b117d3211d9.zip fsf-binutils-gdb-80d269391b93449a7a61322326730b117d3211d9.tar.gz fsf-binutils-gdb-80d269391b93449a7a61322326730b117d3211d9.tar.bz2 |
gdb/gdbserver/
* tracepoint.c (cmd_qtstart): Download tracepoints even when they are
duplicated on address.
Diffstat (limited to 'gdb/gdbserver/tracepoint.c')
-rw-r--r-- | gdb/gdbserver/tracepoint.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/gdb/gdbserver/tracepoint.c b/gdb/gdbserver/tracepoint.c index a0fd39e..2d5cb05 100644 --- a/gdb/gdbserver/tracepoint.c +++ b/gdb/gdbserver/tracepoint.c @@ -3244,17 +3244,26 @@ cmd_qtstart (char *packet) if (tpoint->type == fast_tracepoint) { + int use_agent_p + = use_agent && agent_capability_check (AGENT_CAPA_FAST_TRACE); + if (prev_ftpoint != NULL && prev_ftpoint->address == tpoint->address) - clone_fast_tracepoint (tpoint, prev_ftpoint); + { + if (use_agent_p) + tracepoint_send_agent (tpoint); + else + download_tracepoint_1 (tpoint); + + clone_fast_tracepoint (tpoint, prev_ftpoint); + } else { /* Tracepoint is installed successfully? */ int installed = 0; /* Download and install fast tracepoint by agent. */ - if (use_agent - && agent_capability_check (AGENT_CAPA_FAST_TRACE)) + if (use_agent_p) installed = !tracepoint_send_agent (tpoint); else { |