diff options
author | Andrew Burgess <aburgess@redhat.com> | 2021-12-11 10:35:36 +0000 |
---|---|---|
committer | Andrew Burgess <aburgess@redhat.com> | 2021-12-22 15:05:25 +0000 |
commit | b6e52a0b3b67d2cc98834c46fb67933252189503 (patch) | |
tree | eaa15ebcfa17707b38e235f3d423011248194237 | |
parent | 5b0a3d62423236100bac1e77f7cc084ad9ce0271 (diff) | |
download | gdb-b6e52a0b3b67d2cc98834c46fb67933252189503.zip gdb-b6e52a0b3b67d2cc98834c46fb67933252189503.tar.gz gdb-b6e52a0b3b67d2cc98834c46fb67933252189503.tar.bz2 |
gdb: convert 'set debug lin-lwp' to a boolean command
Convert the 'set debug lin-lwp' command to a boolean. Adds a new
LINUX_NAT_SCOPED_DEBUG_ENTER_EXIT macro, and makes use of it in one
place (linux_nat_target::stop).
The manual entry for 'set debug lin-lwp' is already vague about
exactly what arguments this command takes, and the description talks
about turning debug on and off, so I don't think there's any updates
required there.
I have updated the doc strings shown when the users enters 'help show
debug lin-lwp' or 'help show debug lin-lwp'. The old title lines used
to talk about the 'GNU/Linux lwp module', but this debug flag is now
used for any native linux target debug, so we now talk about
'GNU/Linux native target'. The body string for this setting has been
changed from 'Enables printf debugging output.' to 'When on, print
debug messages relating to the GNU/Linux native target.', the old
value looks like a cut&paste error to me.
-rw-r--r-- | gdb/linux-nat.c | 29 |
1 files changed, 20 insertions, 9 deletions
diff --git a/gdb/linux-nat.c b/gdb/linux-nat.c index 20aa4a1..5992487 100644 --- a/gdb/linux-nat.c +++ b/gdb/linux-nat.c @@ -191,7 +191,12 @@ struct linux_nat_target *linux_target; /* Does the current host support PTRACE_GETREGSET? */ enum tribool have_ptrace_getregset = TRIBOOL_UNKNOWN; -static unsigned int debug_linux_nat; +/* When true, print debug messages relating to the linux native target. */ + +static bool debug_linux_nat; + +/* Implement 'show debug lin-lwp'. */ + static void show_debug_linux_nat (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value) @@ -205,6 +210,11 @@ show_debug_linux_nat (struct ui_file *file, int from_tty, #define linux_nat_debug_printf(fmt, ...) \ debug_prefixed_printf_cond (debug_linux_nat, "linux-nat", fmt, ##__VA_ARGS__) +/* Print "linux-nat" enter/exit debug statements. */ + +#define LINUX_NAT_SCOPED_DEBUG_ENTER_EXIT \ + scoped_debug_enter_exit (debug_linux_nat, "linux-nat") + struct simple_pid_list { int pid; @@ -4318,6 +4328,7 @@ linux_nat_stop_lwp (struct lwp_info *lwp) void linux_nat_target::stop (ptid_t ptid) { + LINUX_NAT_SCOPED_DEBUG_ENTER_EXIT; iterate_over_lwps (ptid, linux_nat_stop_lwp); } @@ -4518,14 +4529,14 @@ void _initialize_linux_nat (); void _initialize_linux_nat () { - add_setshow_zuinteger_cmd ("lin-lwp", class_maintenance, - &debug_linux_nat, _("\ -Set debugging of GNU/Linux lwp module."), _("\ -Show debugging of GNU/Linux lwp module."), _("\ -Enables printf debugging output."), - NULL, - show_debug_linux_nat, - &setdebuglist, &showdebuglist); + add_setshow_boolean_cmd ("lin-lwp", class_maintenance, + &debug_linux_nat, _("\ +Set debugging of GNU/Linux native target."), _(" \ +Show debugging of GNU/Linux native target."), _(" \ +When on, print debug messages relating to the GNU/Linux native target."), + nullptr, + show_debug_linux_nat, + &setdebuglist, &showdebuglist); add_setshow_boolean_cmd ("linux-namespaces", class_maintenance, &debug_linux_namespaces, _("\ |