Re: [rfa/target/doc] Print less with "set debug target 1"

Daniel Jacobowitz
2004-03-09T16:18:29Z

On Sat, Mar 06, 2004 at 06:08:35PM -0500, Daniel Jacobowitz wrote:
> This is something that's always bugged me. I wanted to track a problem in
> the testsuite using "set debug target 1", but the output was so incredibly
> noisy (because of libthread_db) that everything timed out. This patch
> changes "set debug target 1" to only print the first line of a memory
> transfer, and documents "set debug target 2" to print the whole thing.
>
> Seem OK?

Bug report filed - gdb/1583.

Here's what I checked in to HEAD. Eli, I ended up rewording the
description for clarity, and now it says "use the @code{run} command" -
by inspecting the rest of the manual, I'm pretty sure that should stay
@code rather than @kbd. Right?

--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer

2004-03-09 Daniel Jacobowitz <drow@mvista.com>

* target.c (debug_to_xfer_memory): If targetdebug is 1, don't
print the whole transfer.
(initialize_targets): Update description of "set debug target".

2004-03-09 Daniel Jacobowitz <drow@mvista.com>

* gdb.texinfo (Debugging Output): Document values for "set debug
target".

Index: target.c
===================================================================
RCS file: /cvs/src/src/gdb/target.c,v
retrieving revision 1.70
diff -u -p -r1.70 target.c
--- target.c 19 Jan 2004 16:49:35 -0000 1.70
+++ target.c 9 Mar 2004 16:14:42 -0000
@@ -1829,8 +1829,6 @@ debug_to_xfer_memory (CORE_ADDR memaddr,
(unsigned int) memaddr, /* possable truncate long long */
len, write ? "write" : "read", retval);

-
-
if (retval > 0)
{
int i;
@@ -1839,7 +1837,15 @@ debug_to_xfer_memory (CORE_ADDR memaddr,
for (i = 0; i < retval; i++)
{
if ((((long) &(myaddr[i])) & 0xf) == 0)
- fprintf_unfiltered (gdb_stdlog, "\n");
+ {
+ if (targetdebug < 2 && i > 0)
+ {
+ fprintf_unfiltered (gdb_stdlog, " ...");
+ break;
+ }
+ fprintf_unfiltered (gdb_stdlog, "\n");
+ }
+
fprintf_unfiltered (gdb_stdlog, " %02x", myaddr[i] & 0xff);
}
}
@@ -2431,7 +2437,9 @@ initialize_targets (void)
(add_set_cmd ("target", class_maintenance, var_zinteger,
(char *) &targetdebug,
"Set target debugging.\n\
-When non-zero, target debugging is enabled.", &setdebuglist),
+When non-zero, target debugging is enabled. Higher numbers are more\n\
+verbose. Changes do not take effect until the next \"run\" or \"target\"\n\
+command.", &setdebuglist),
&showdebuglist);

add_setshow_boolean_cmd ("trust-readonly-sections", class_support,
Index: doc/gdb.texinfo
===================================================================
RCS file: /cvs/src/src/gdb/doc/gdb.texinfo,v
retrieving revision 1.199
diff -u -p -r1.199 gdb.texinfo
--- doc/gdb.texinfo 29 Feb 2004 02:57:24 -0000 1.199
+++ doc/gdb.texinfo 9 Mar 2004 16:14:45 -0000
@@ -13434,7 +13434,9 @@ info.
@item set debug target
Turns on or off display of @value{GDBN} target debugging info. This info
includes what is going on at the target level of GDB, as it happens. The
-default is off.
+default is 0. Set it to 1 to track events, and to 2 to also track the
+value of large memory transfers. Changes to this flag do not take effect
+until the next time you connect to a target or use the @code{run} command.
@kindex show debug target
@item show debug target
Displays the current state of displaying @value{GDBN} target debugging