This is the mail archive of the
mailing list for the GDB project.
Re: [PATCH] Tracing notes and metadata
- From: Stan Shebs <stan_shebs at mentor dot com>
- To: Eli Zaretskii <eliz at gnu dot org>
- Cc: gdb-patches at sourceware dot org
- Date: Mon, 17 Oct 2011 18:26:13 -0700
- Subject: Re: [PATCH] Tracing notes and metadata
- References: <4E9C5112.email@example.com> <firstname.lastname@example.org>
On 10/17/2011 09:29 AM, Eli Zaretskii wrote:
Date: Mon, 17 Oct 2011 09:00:18 -0700
From: Stan Shebs<email@example.com>
With this patch, any arguments to tstart and tstop are recorded with the
trace run as free-form text, and reported as part of its status. Also,
there is a trace-user variable (which is free form text which is
typically constant and you can set in your .gdbinit), and set/show
variables for the start and stop notes as well.
In addition, this patch adds start/stop timestamps and per-tracepoint
hit counts and traceframe usage.
The patch still needs testsuite and NEWS, but considering the user
interface tinkering, it seemed like a good idea to solicit feedback
before committing to all the details.
The documentation part is okay, but please add some overview of the
notes, to serve as the glue to the description of the commands. As I
read the patch, I was wondering whether there's only one note that can
be set by either "tstart" or "tstop" (and then what happens if you
give arguments to "tstop" when "tstart" already provided a note?), or
two separate and independent notes (in which case why do we have
"trace-stop-notes", but no "trace-start-notes"?). Instead of
disclosing all this piecemeal and leaving the reader with a reasonable
doubt, why not explain it once and for all?
OK, needs more explanation then. :-) The tstart note is the summary of
the trace run as a whole, while the stop note only applies if the trace
was manually stopped via tstop, vs stopping due to trace buffer full,
bytecode dividing by zero, etc. In practice, one would only expect to
supply a stop note if the trace had to be manually stopped by someone
else ("tstop I needed to stop your run so I could test my workaround for
bug 12043 -sts"), so the original person running the trace has an
explanation of what happened - and can interpret the
possibly-incomplete trace results accordingly.
Btw, didn't the socializing parties ask you for a way to _add_ to an
existing note, rather than overwriting it? The way you designed it,
fixing a single typo requires retyping (or copy/pasting) the whole
thing, which sounds inconvenient.
No, you're the first person to mention adding actually. I think the
mental model is that the notes are typically one-liners, and we do have
line-editing capability available from readline. I think if things
really needed to be much more elaborate in a multi-user setting, the
users would set up a wiki or virtual signup sheets or some such, and at
that point it gets generally out of scope for GDB. ("tstart