Debugging with GDB Manual HP WDB v6.3 (5900-2180, August 2012)

Different threads non-concurrently wait on the same condition variable, but with different
associated mutexes.
The thread terminates execution without unlocking the associated mutexes or read-write locks.
The thread waits on a condition variable for which the associated mutex is not locked.
The thread terminates execution, and the resources associated with the terminated thread
continues to exist in the application because the thread has not been joined or detached.
The thread uses more than the specified percentage of the stack allocated to the thread.
The number of threads waiting on any pthread object exceeds the specified thresh- old number.
14.11.3.1 Pre-requisites for Advanced Thread Debugging
The following pre-requisites apply for advanced thread debugging:
The advanced thread debugging features are supported only on HP-UX 11i v2 and later on
both PA-RISC and Integrity systems.
The tracing pthread library is required for advanced thread-debugging. The pthread tracer
library is available by default on systems running on HP-UX 11i v2 or later. You must install
HP WDB 5.5 or later versions of the debugger to support enhanced thread debugging. The
installation scripts for HP WDB 5.5 and later versions of the debugger automatically add links
at /opt/langtools/lib/ to replace the standard libpthread library with libpthread
tracer library at run time.
The thread debugging feature in HP WDB is dependent on the availability of the dynamic
Linker Version B.11.19.
HP WDB uses librtc.sl to enable thread debugging support. If the debugger is installed
in a directory other than the default /opt/langtools/bin directory, you must use the
environment variable, LIBRTC_SERVER, to export the path of the appropriate version of
librtc.sl.
HP WDB does not support debugging of programs that link with the archive version of the
standard C library libc.a or the core library libcl.a. The programs must be linked with
libc.sl.
The advanced thread debugging commands work only if set thread-check is set to on.
For PA-RISC 32-bit applications, the dynamic library path look-up must be enabled for advanced
thread debugging. To enable dynamic library path look-up for advanced thread debugging,
enter the following command at HP-UX prompt:
# chatr +s enable <PA32-bitApp>
This command automatically enables dynamic library path look-up. No additional environmental
variables are required to be set.
14.11.3.2 Enabling and Disabling Advanced Thread Debugging Features
HP WDB 5.6 and later versions of the debugger provide advanced thread debugging features for
debugging multi-threaded applications running on 11i v2, or 11i v3. These features are available
as options to the set thread-check command. The syntax for the set thread-check
command is as follows:
set thread check { [on|off]| [option] [on|off] |[option] [num]}
The set thread-check [on|off] command enables or disables advanced thread debugging.
This feature is off by default. The set thread-check [on|off] command must be enabled
prior to running the application under the debugger, to force the underlying runtime system to
collect information on pthread primitives.
14.11 Thread Debugging Support 141