This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH v2] linux: Add maintenance commands to test libthread_db
- From: Gary Benson <gbenson at redhat dot com>
- To: Eli Zaretskii <eliz at gnu dot org>
- Cc: gdb-patches at sourceware dot org, simon dot marchi at ericsson dot com, palves at redhat dot com
- Date: Tue, 5 Jun 2018 16:46:13 +0100
- Subject: Re: [PATCH v2] linux: Add maintenance commands to test libthread_db
- References: <1511361761-1333-1-git-send-email-gbenson@redhat.com> <1527096776-29187-1-git-send-email-gbenson@redhat.com> <837enuclmj.fsf@gnu.org>
Eli Zaretskii wrote:
> > From: Gary Benson <gbenson@redhat.com>
> >
> > The test itself is a basic integrity check exercising all libthread_db
> > functions used by GDB on GNU/Linux systems. By extension this also
> > exercises the proc_service functions provided by GDB that libthread_db
> > uses. This is useful for NPTL developers and libthread_db developers.
> > It could also prove useful investigating bugs reported against GDB
> > where the thread debugging library or GDB's proc_service layer is
> > suspect.
>
> I think some of this text should be in the manual, otherwise the
> description of the command is not very useful.
How about this, as the full diff of the manual? I added the text to
the first section, and updated the second to point at the first and
also to document what happens when automated tests fail.
--
diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
index 28f083f..faca132 100644
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -35533,6 +35533,14 @@ modify XML target descriptions.
Check that the target descriptions dynamically created by @value{GDBN}
equal the descriptions created from XML files found in @var{dir}.
+@kindex maint check libthread-db
+@item maint check libthread-db
+Run integrity checks on the current inferior's thread debugging
+library. This exercises all libthread_db functionality used by GDB on
+GNU/Linux systems, and by extension also exercises the proc_service
+functions provided by GDB that libthread_db uses. Note that parts of
+the test may be skipped on some platforms when debugging core files.
+
@kindex maint print dummy-frames
@item maint print dummy-frames
Prints the contents of @value{GDBN}'s internal dummy-frame stack.
@@ -35840,6 +35848,17 @@ number of blocks in the blockvector
@end enumerate
@end table
+@kindex maint set check-libthread-db
+@kindex maint show check-libthread-db
+@item maint set check-libthread-db [on|off]
+@itemx maint show check-libthread-db
+Control whether @value{GDBN} should run integrity checks on inferior
+specific thread debugging libraries as they are loaded. The default
+is not to perform such checks. If any check fails @value{GDBN} will
+unload the library and continue searching for a suitable candidate as
+described in @ref{set libthread-db-search-path}. For more information
+about the tests, see @ref{maint check libthread-db}.
+
@kindex maint space
@cindex memory used by commands
@item maint space @var{value}