Improve output of "maintenance info sol-threads" command.
authorJoel Brobecker <brobecker@gnat.com>
Wed, 8 May 2013 06:23:50 +0000 (06:23 +0000)
committerJoel Brobecker <brobecker@gnat.com>
Wed, 8 May 2013 06:23:50 +0000 (06:23 +0000)
This patch does the following:
  - Puts the startfunc and "Sleep func" info on the same line;
  - Renames "Sleep func" into "sleepfunc" to be consistent with
    "startfunc"
  - Avoids the use of a '-' as a separate before the "sleepfunc"
    output, because the '-' looks odd and out of place when the
    "startfunc" field is not printed (ti.ti_startfunc is nul).
  - Use a '=' instead of ':' and avoids the space between
    the name of the value and its value, mostly to help group
    the value with its name.

For the record, this is how the new outout now looks like:

    (gdb) maintenance info sol-threads
    user   thread #1, lwp 1, (active)
    system thread #2, lwp 2, (active)
    system thread #3, lwp 0, (asleep)    sleepfunc=0xff32d9e0
    user   thread #4, lwp 4, (asleep)    startfunc=[...].task_wrapper   sleepfunc=0xff3290f0
    system thread #5, lwp 7, (active)    startfunc=_co_timerset
    user   thread #6, lwp 8, (active)    startfunc=[...].task_wrapper

gdb/ChangeLog:

        * sol-thread.c (info_cb): Rework the output of the "maintenance
        info sol-threads" command a bit.

gdb/ChangeLog
gdb/sol-thread.c

index ff51bc7..1b5da8d 100644 (file)
@@ -1,5 +1,10 @@
 2013-05-08  Joel Brobecker  <brobecker@adacore.com>
 
+       * sol-thread.c (info_cb): Rework the output of the "maintenance
+       info sol-threads" command a bit.
+
+2013-05-08  Joel Brobecker  <brobecker@adacore.com>
+
        * sol-thread.c (info_cb) [ti.ti_state == TD_THR_SLEEP]:
        Replace ti.ti_startfunc by ti.ti_pc.
 
index 6faf91d..c16ad98 100644 (file)
@@ -1119,10 +1119,10 @@ info_cb (const td_thrhandle_t *th, void *s)
            = lookup_minimal_symbol_by_pc (ti.ti_startfunc);
 
          if (msym.minsym)
-           printf_filtered ("   startfunc: %s\n",
+           printf_filtered ("   startfunc=%s",
                             SYMBOL_PRINT_NAME (msym.minsym));
          else
-           printf_filtered ("   startfunc: %s\n",
+           printf_filtered ("   startfunc=%s",
                             paddress (target_gdbarch (), ti.ti_startfunc));
        }
 
@@ -1133,16 +1133,14 @@ info_cb (const td_thrhandle_t *th, void *s)
            = lookup_minimal_symbol_by_pc (ti.ti_pc);
 
          if (msym.minsym)
-           printf_filtered (" - Sleep func: %s\n",
+           printf_filtered ("   sleepfunc=%s",
                             SYMBOL_PRINT_NAME (msym.minsym));
          else
-           printf_filtered (" - Sleep func: %s\n",
+           printf_filtered ("   sleepfunc=%s",
                             paddress (target_gdbarch (), ti.ti_pc));
        }
 
-      /* Wrap up line, if necessary.  */
-      if (ti.ti_state != TD_THR_SLEEP && ti.ti_startfunc == 0)
-       printf_filtered ("\n"); /* don't you hate counting newlines?  */
+      printf_filtered ("\n");
     }
   else
     warning (_("info sol-thread: failed to get info for thread."));