This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH] store trace default-collect to target [1/6] target, trace and remote
- From: Yao Qi <yao at codesourcery dot com>
- To: Hui Zhu <hui_zhu at mentor dot com>
- Cc: gdb-patches ml <gdb-patches at sourceware dot org>
- Date: Thu, 11 Apr 2013 18:48:08 +0800
- Subject: Re: [PATCH] store trace default-collect to target [1/6] target, trace and remote
- References: <51665508 dot 5050706 at mentor dot com> <5166554D dot 2070906 at mentor dot com>
On 04/11/2013 02:16 PM, Hui Zhu wrote:
--- a/remote.c
+++ b/remote.c
@@ -215,6 +215,8 @@ static int remote_get_trace_status (stru
static int remote_upload_tracepoints (struct uploaded_tp **utpp);
static int remote_upload_trace_state_variables (struct uploaded_tsv **utsvp);
+
+static void remote_upload_trace_default_collest (char **collectp);
^^^^^^^ typo "collect"
static void remote_query_supported (void);
@@ -3567,6 +3569,7 @@ remote_start_remote (int from_tty, struc
{
struct uploaded_tp *uploaded_tps = NULL;
struct uploaded_tsv *uploaded_tsvs = NULL;
+ char *uploaded_default_collest = NULL;
^^^^^^^ typo.
if (current_trace_status ()->running)
printf_filtered (_("Trace is already running on the target.\n"));
@@ -3581,6 +3584,10 @@ remote_start_remote (int from_tty, struc
remote_upload_tracepoints (&uploaded_tps);
merge_uploaded_tracepoints (&uploaded_tps);
+
+ remote_upload_trace_default_collest (&uploaded_default_collest);
+
+ trace_set_default_collect (uploaded_default_collest);
Likewise.
}
/* The thread and inferior lists are now synchronized with the
@@ -10567,6 +10574,23 @@ remote_download_tracepoint (struct bp_lo
do_cleanups (old_chain);
}
+static void
+remote_download_tracepoint_default_collect (char *collect)
Add a comment to this function.
+static void
+remote_upload_trace_default_collest (char **collectp)
Comments to this function are needed as well.
+/* Not overwrite default collect If COLLECT is NULL or its size is 0. */
+
+void
+trace_set_default_collect (char *collect)
+{
+ if (collect != NULL && strlen (collect) != 0)
+ {
+ xfree (default_collect);
+ default_collect = collect;
+ }
+}
It looks incorrect to me. When we change target to a tfile, in which
the default-collect is "", the variable default_collect won't be updated.
Supposing we have two tfile actions.tf and actions1.tf, the
default-collect is "$regs" and "" respectively,
(gdb) target tfile testsuite/gdb.trace/actions.tf
(gdb) show default-collect
The list of expressions to collect by default is "$regs".
(gdb) target tfile testsuite/gdb.trace/actions1.tf
(gdb) show default-collect
The list of expressions to collect by default is "$regs".
I don't have other comments.
--
Yao (éå)