gdb/gdbserver/
authorYao Qi <yao@codesourcery.com>
Mon, 16 Apr 2012 15:38:53 +0000 (15:38 +0000)
committerYao Qi <yao@codesourcery.com>
Mon, 16 Apr 2012 15:38:53 +0000 (15:38 +0000)
* tracepoint.c (cmd_qtstart): Download tracepoints even when they are
duplicated on address.

gdb/gdbserver/ChangeLog
gdb/gdbserver/tracepoint.c

index 61d45a5aab17c9630f496b741dbd4caa8633239d..1c9b9d8c5c5acc5278798614df50a7fae53d3f33 100644 (file)
@@ -1,3 +1,8 @@
+2012-04-16  Yao Qi  <yao@codesourcery.com>
+
+       * tracepoint.c (cmd_qtstart): Download tracepoints even when they are
+       duplicated on address.
+
 2012-04-16  Yao Qi  <yao@codesourcery.com>
 
        * tracepoint.c (COPY_FIELD_TO_BUF): New macro.
index a0fd39e18ba705f56569f1dfbb86353a08f50fb6..2d5cb058de38002098b690e4687c32fd4f1315d2 100644 (file)
@@ -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
                    {