This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH] make "set debug target" take effect immediately
- From: Tom Tromey <tromey at redhat dot com>
- To: Eli Zaretskii <eliz at gnu dot org>
- Cc: gdb-patches at sourceware dot org
- Date: Mon, 28 Jul 2014 14:23:13 -0600
- Subject: Re: [PATCH] make "set debug target" take effect immediately
- Authentication-results: sourceware.org; auth=none
- References: <1406574267-5212-1-git-send-email-tromey at redhat dot com> <837g2xgulk dot fsf at gnu dot org>
Eli> The 2nd sentence of the doc string says something that you deleted
Eli> from the manual. Shouldn't it be deleted from here as well?
Yeah, overlooked that one.
Tom
b/gdb/ChangeLog:
2014-07-28 Tom Tromey <tromey@redhat.com>
* target.c (set_targetdebug): New function.
(initialize_targets): Pass set_targetdebug when creating "set
debug target".
b/gdb/doc/ChangeLog:
2014-07-28 Tom Tromey <tromey@redhat.com>
* gdb.texinfo (Debugging Output): Update for change to "set debug
target".
b/gdb/testsuite/ChangeLog:
2014-07-28 Tom Tromey <tromey@redhat.com>
* gdb.base/sss-bp-on-user-bp-2.exp: Expect output from "set debug
target 0".
diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
index 32f709a..8d9148c 100644
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -22996,8 +22996,7 @@ Show the current state of symbol table creation debugging.
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 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.
+value of large memory transfers.
@item show debug target
Displays the current state of displaying @value{GDBN} target debugging
info.
diff --git a/gdb/target.c b/gdb/target.c
index d9b471b..2a3baa4 100644
--- a/gdb/target.c
+++ b/gdb/target.c
@@ -120,6 +120,8 @@ static void init_dummy_target (void);
static void debug_to_open (char *, int);
+static void update_current_target (void);
+
/* Pointer to array of target architecture structures; the size of the
array; the current index into the array; the allocated size of the
array. */
@@ -175,6 +177,13 @@ int may_stop = 1;
/* Non-zero if we want to see trace of target level stuff. */
static unsigned int targetdebug = 0;
+
+static void
+set_targetdebug (char *args, int from_tty, struct cmd_list_element *c)
+{
+ update_current_target ();
+}
+
static void
show_targetdebug (struct ui_file *file, int from_tty,
struct cmd_list_element *c, const char *value)
@@ -3554,9 +3563,8 @@ initialize_targets (void)
Set target debugging."), _("\
Show target debugging."), _("\
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."),
- NULL,
+verbose."),
+ set_targetdebug,
show_targetdebug,
&setdebuglist, &showdebuglist);
diff --git a/gdb/testsuite/gdb.base/sss-bp-on-user-bp-2.exp b/gdb/testsuite/gdb.base/sss-bp-on-user-bp-2.exp
index a196f68..dd793bd 100644
--- a/gdb/testsuite/gdb.base/sss-bp-on-user-bp-2.exp
+++ b/gdb/testsuite/gdb.base/sss-bp-on-user-bp-2.exp
@@ -76,7 +76,7 @@ if { $hardware_step } {
return
}
-gdb_test_no_output "set debug target 0"
+gdb_test "set debug target 0" "->to_log_command.*\\)"
set line_re "\[^\r\n\]*"