Looking at the process stack on HP-UX 11.11

From: Allan Nelson <anelson77388_at_gmail.com>
Date: Fri, 7 Mar 2008 14:20:17 -0600
Message-ID: <ffb96860803071220s239058fdo850479c356a7d0d5@mail.gmail.com>


Tanel Poder gave a great presentation at Hotsos concerning systematic troubleshooting. One of the tools he used was the Solaris pstack command. This command is not present in HP-UX 11.11. You can find it in 11.23 but that is hardly a convincing argument for upgrading. I did a little investigating and then told Tanel I did not think you could do it with HP-UX 11.11. Wrong. Here it is with gdb:

[appsora udump] gdb --pid 5815 /d20/oracle/product/mbasdb/10.1.0/bin/oracle Detected 64-bit executable.
Invoking /opt/langtools/bin/gdb64.
HP gdb 3.3 for PA-RISC 2.0 (wide), HP-UX 11.00. Copyright 1986 - 2001 Free Software Foundation, Inc. Hewlett-Packard Wildebeest 3.3 (based on GDB) is covered by the GNU General Public License. Type "show copying" to see the conditions to change it and/or distribute copies. Type "show warranty" for warranty/support.
..
Attaching to program: /d20/oracle/product/mbasdb/10.1.0/bin/oracle, process 5815

warning: reading `r3' register: No data
Reading symbols from /d20/oracle/product/mbasdb/10.1.0/lib/libodm10.sl... warning: section .data not found in
/d20/oracle/product/mbasdb/10.1.0/lib/libodm 10.sl
done.

warning: reading `r3' register: No data
Reading symbols from /d20/oracle/product/mbasdb/10.1.0/lib/libhasgen10.sl... done.

warning: reading `r3' register: No data
Reading symbols from /d20/oracle/product/mbasdb/10.1.0/lib/libskgxn2.sl... warning: section .data not found in
/d20/oracle/product/mbasdb/10.1.0/lib/libskg xn2.sl
done.

warning: reading `r3' register: No data
Reading symbols from /d20/oracle/product/mbasdb/10.1.0/lib/libocr10.sl... warning: section .data not found in
/d20/oracle/product/mbasdb/10.1.0/lib/libocr 10.sl
done.

warning: reading `r3' register: No data
Reading symbols from /d20/oracle/product/mbasdb/10.1.0/lib/libocrb10.sl... warning: section .data not found in
/d20/oracle/product/mbasdb/10.1.0/lib/libocr b10.sl
done.

warning: reading `r3' register: No data
Reading symbols from /d20/oracle/product/mbasdb/10.1.0/lib/libocrutl10.sl... warning: section .data not found in
/d20/oracle/product/mbasdb/10.1.0/lib/libocr utl10.sl

done.

warning: reading `r3' register: No data
Reading symbols from /d20/oracle/product/mbasdb/10.1.0/lib/libdbcfg10.sl... warning: section .data not found in
/d20/oracle/product/mbasdb/10.1.0/lib/libdbc fg10.sl

done.

warning: reading `r3' register: No data

warning: File not processed by pxdb--about to process now.

Error opening: /d20/oracle/product/mbasdb/10.1.0/lib/libjox10.sl for read/write.
PXDB aborted.
Reading symbols from
/d20/oracle/product/mbasdb/10.1.0/lib/libjox10.sl...done.

warning: reading `r3' register: No data
Reading symbols from
/d20/oracle/product/mbasdb/10.1.0/lib/libnnz10.sl...done.

warning: reading `r3' register: No data
Reading symbols from /usr/lib/pa20_64/libcl.2...done.

warning: reading `r3' register: No data
Reading symbols from /usr/lib/pa20_64/librt.2...done.

warning: reading `r3' register: No data
Reading symbols from /usr/lib/pa20_64/libpthread.1...done.

warning: reading `r3' register: No data
Reading symbols from /usr/lib/pa20_64/libnss_dns.1...done.

warning: reading `r3' register: No data
Reading symbols from /usr/lib/pa20_64/libdl.1...done.

warning: reading `r3' register: No data
---Type <return> to continue, or q <return> to quit--- Reading symbols from /usr/lib/pa20_64/libm.2...done.

warning: reading `r3' register: No data
Reading symbols from /usr/lib/pa20_64/libc.2...done.

warning: reading `r3' register: No data

warning: reading `r3' register: No data
Reading symbols from /usr/lib/pa20_64/libnss_files.1...done.

warning: reading `r3' register: No data

warning: reading `r3' register: No data
0xc0000000001faf5c in _read_sys+0x2c () from /usr/lib/pa20_64/libc.2 (gdb) bt
#0 0xc0000000001faf5c in _read_sys+0x2c () from /usr/lib/pa20_64/libc.2
warning: reading `r3' register: No data
#1 0xc000000000205d2c in read+0xcc () from /usr/lib/pa20_64/libc.2
warning: reading `r3' register: No data
#2 0x400000000214cc5c in nttrd+0xa4 ()
#3 0x4000000001ad9710 in nsprecv+0x170 ()
#4 0x4000000001adacd4 in nsrdr+0x4ac ()
#5 0x4000000001add008 in nsdo+0x1b28 ()
#6 0x4000000001ae11cc in nsbrecv+0x4c ()
#7 0x4000000001ae66e8 in nioqrc+0x460 ()
#8 0x4000000001e245f0 in opikndf2+0x260 ()
#9 0x4000000001aef404 in opitsk+0x124c ()
#10 0x400000000170956c in opiino+0x38c ()
#11 0x4000000001c78cd4 in opiodr+0x5fc ()
#12 0x40000000016c88d8 in opidrv+0x310 ()
#13 0x400000000166d6d8 in sou2o+0x68 ()
#14 0x400000000166d830 in main+0xa8 ()

(gdb)

I don't know how to suppress the messages about register r3 but at least you can get the stack unwound this way. I haven't yet managed to make this work with adb. But I will post again if I do.

Allan

--
http://www.freelists.org/webpage/oracle-l
Received on Fri Mar 07 2008 - 14:20:17 CST

Original text of this message