- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - HP-UX
- >
- library difference between compile env. and produc...
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Forums
Discussions
Discussions
Discussions
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-02-2007 08:41 PM
04-02-2007 08:41 PM
library difference between compile env. and production env.
If we use running on HP-UX 11i of compile env, we sometimes got the core when apache start.
#0 0xc7ee43b8 in
warning: Attempting to unwind past bad PC 0xc7ee43b8
#1 0xc80cfbe4 in __rw::__rb_tree
But when we use the library on HP-UX 11i of the other machine, which is different from compile env., we did not get the error.
If you know the reason, please let me know.
The both of OS is the same,
----------------
bash-2.04# uname -r
B.11.11
----------------
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-02-2007 09:14 PM
04-02-2007 09:14 PM
Re: library difference between compile env. and production env.
i don't know the reason but, if you know the main library of Apache, try to do a "cksum" and make comparison between two file .
hth
regards
pg
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-02-2007 10:06 PM
04-02-2007 10:06 PM
Re: library difference between compile env. and production env.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-03-2007 12:03 AM
04-03-2007 12:03 AM
Re: library difference between compile env. and production env.
not same as your issue but maybe this
http://forums1.itrc.hp.com/service/forums/questionanswer.do?threadId=1107787
can help you a little bit (try debugging with gdb if you know this tool).
kind regards
pg
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-03-2007 02:20 AM
04-03-2007 02:20 AM
Re: library difference between compile env. and production env.
One other note: Reading between the lines and noting your ${PS1}, it appears that bash is root's shell. Make absolutely certain that root's shell (as defined in /etc/passwd_ is /sbin/sh because root must have a statically linked shell. It's okay for root to explicitly invoke bash from /sbin/sh and I trust that this is what you are acrtually doing. You won't know anything is wrong until you try to reboot.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-03-2007 11:57 AM
04-03-2007 11:57 AM
Re: library difference between compile env. and production env.
>Reading between the lines and noting
>your ${PS1},
Can you tell me the meaning of ${PS1}?
regards,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-03-2007 12:06 PM
04-03-2007 12:06 PM
Re: library difference between compile env. and production env.
Try this and answer your own question:
echo "${PS1}"
echo "${PS2}"
Since '#' is, by convention, part of root's ${PS1}, it appears that bash is root's shell. If so, you are an accident waiting to happen.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-03-2007 12:17 PM
04-03-2007 12:17 PM
Re: library difference between compile env. and production env.
The both is the same result.
bash-2.04# echo "${PS2}"
>
bash-2.04# echo "${PS1}"
\s-\v\$
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-03-2007 12:26 PM
04-03-2007 12:26 PM
Re: library difference between compile env. and production env.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-03-2007 01:44 PM
04-03-2007 01:44 PM
Re: library difference between compile env. and production env.
I notice that the problem machine in the below.
====================
bash-2.04# ls -lt /usr/lib/libCsup_v2.2
-r-xr-xr-x 1 bin bin 221184 May 23 2006 /usr/lib/libCsup_v2.2*
====================
But no problem machine is the below.
====================
bash-2.04# ls -lt /usr/lib/libCsup_v2.2
-r-xr-xr-x 1 bin bin 217088 Sep 25 2002 /usr/lib/libCsup_v2.2*
====================
The question is that how can I upgrade libCsup_v2.2 library?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-03-2007 03:09 PM
04-03-2007 03:09 PM
Re: library difference between compile env. and production env.
And what is the good command for reboot on HP-UX 11i, because the box is at remote.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-03-2007 05:09 PM
04-03-2007 05:09 PM
Re: library difference between compile env. and production env.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-03-2007 07:02 PM
04-03-2007 07:02 PM
Re: library difference between compile env. and production env.
pg's link is pretty useless, that deals with missing libs.
>I notice that the problem machine in the below.
You are only imagining this. ;-)
This lib doesn't contain __rb_tree.
221184 May 23 2006 /usr/lib/libCsup_v2.2*
>But no problem machine is the below.
217088 Sep 25 2002 /usr/lib/libCsup_v2.2*
>The question is that how can I upgrade libCsup_v2.2 library?
You're not looking closely. It says that the newer is the bad one. You don't want to upgrade?
>In order to be the same library (/usr/lib/libCsup_v2.2) I will try to install the patch. usually do we need to restart box?
No, you don't need to reboot to install the latest aC++ runtime, PHSS_33944.
It helps if you have a longer stack trace so we can determine your problem.
__rb_tree is only used for map and set containers and is typically in user code or shlibs.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-04-2007 12:20 PM
04-04-2007 12:20 PM
Re: library difference between compile env. and production env.
> pg's link is pretty useless,
> that deals with missing libs.
What is the meaning of pg's ?
> It says that the newer is the bad one.
> You don't want to upgrade?
Our customer might use new one, so I would like to know the root of causes.
> It helps if you have a longer stack trace > so we can determine your problem.
> __rb_tree is only used for map and set
> containers and is typically in user code > or shlibs.
Here is the trace of gdb, and please note that we omits some function due to confidential issue.
------------------
#1 0xc80cfbe4 in __rw::__rb_tree<..>,std::allocator<:pair>onst,char *>>>::_C_get_link (this=0x79f26f1c)
at /opt/aCC/include_std/rw/tree:409
#2 0xc7766ac0 in std::__sinit_aaa_cpp+0xe0 ()
from /opt/hpws/apache/a1.sl
#3 0xc123605c in __shlInit+0x88 () from /usr/lib/libCsup_v2.2
#4 0xc7718b80 in _shlInit+0x20 ()
from /opt/hpws/apache/a1.sl
#5 0xc1235988 in __shlinit+0xac () from /usr/lib/libCsup_v2.2
#6 0xc0032458 in _shl_load_invoke_initializers+0xb0 () from /usr/lib/dld.sl
#7 0xc0032df0 in _shl_load+0x5cc () from /usr/lib/dld.sl
#8 0xc0005e44 in __shl_load+0xf0 () from /usr/lib/libdld.2
#9 0xc3af4674 in apr_dso_load (res_handle=0x7a001574,
path=0x400ac600 "/opt/hpws/apache/a1.sl",
pool=0x4003d990) at b1o.c:83
#10 0x40bf8 in load_module (cmd=0x7a001278, dummy=0x7a0013b4,
modname=0x400ac5b0 "test_module",
filename=0x400ac5c8 "/opt/hpws/apache/a1.sl")
at mod_so.c:239
#11 0x4660c in invoke_cmd (cmd=0x40003e00, parms=0x7a001278,
---Type
mconfig=0x7a0013b4, args=0x4009ab26 "") at config.c:701
#12 0x483a0 in execute_now (cmd_line=0x400ac538 "LoadModule",
args=0x4009aae3 "a1 /opt/hpws/apache/a1.sl", parms=0x7a001278, p=0x4003d990, ptemp=0x40084a90,
sub_tree=0x7a0013b4, parent=0x0) at config.c:1334
#13 0x47418 in ap_build_config_sub (p=0x4003d990, temp_pool=0x40084a90,
l=0x4009aad8 "LoadModule rsawebagent_module /opt/hpws/apache/a1.sl", parms=0x7a001278, current=0x7a001330,
curr_parent=0x7a001334, conftree=0x7a000f78) at config.c:913
#14 0x47c04 in ap_build_config (parms=0x7a001278, p=0x4003d990,
temp_pool=0x40084a90, conftree=0x7a000f78) at config.c:1126
#15 0x48b2c in process_resource_config_nofnmatch (s=0x4003f7b8,
fname=0x400a8438 "/opt/hpws/apache/a1.conf",
conftree=0x7a000f78, p=0x4003d990, ptemp=0x40084a90, depth=0)
at config.c:1511
#16 0x48d34 in ap_process_resource_config (s=0x4003f7b8,
fname=0x400a8438 "/opt/hpws/apache/b2.conf",
conftree=0x7a000f78, p=0x4003d990, ptemp=0x40084a90) at config.c:1547
#17 0x666b8 in include_config (cmd=0x7a000cb8, dummy=0x7a000df4,
name=0x400a8388 "/opt/hpws/apache/a1.conf")
at core.c:2298
#18 0x46508 in invoke_cmd (cmd=0x4000a540, parms=0x7a000cb8,
mconfig=0x7a000df4, args=0x40072a95 "") at config.c:691
#19 0x483a0 in execute_now (cmd_line=0x400a8328 "include",
args=0x40072a68 "/opt/hpws/apache/a1.conf",
parms=0x7a000cb8, p=0x4003d990, ptemp=0x40084a90, sub_tree=0x7a000df4,
parent=0x0) at config.c:1334
#20 0x47418 in ap_build_config_sub (p=0x4003d990, temp_pool=0x40084a90,
l=0x40072a60 "include /opt/hpws/apache/a1.conf",
parms=0x7a000cb8, current=0x7a000d70, curr_parent=0x7a000d74,
conftree=0x4000cea0) at config.c:913
#21 0x47c04 in ap_build_config (parms=0x7a000cb8, p=0x4003d990,
temp_pool=0x40084a90, conftree=0x4000cea0) at config.c:1126
#22 0x48b2c in process_resource_config_nofnmatch (s=0x4003f7b8,
fname=0x4008a248 "/opt/hpws/apache/conf/httpd.conf", conftree=0x4000cea0,
p=0x4003d990, ptemp=0x40084a90, depth=0) at config.c:1511
#23 0x48d34 in ap_process_resource_config (s=0x4003f7b8,
fname=0x4008a248 "/opt/hpws/apache/conf/httpd.conf", conftree=0x4000cea0,
p=0x4003d990, ptemp=0x40084a90) at config.c:1547
#24 0x49ddc in ap_read_config (process=0x4003ba08, ptemp=0x40084a90,
filename=0x4000649c "conf/httpd.conf", conftree=0x4000cea0)
at config.c:1890
#25 0x4e0a0 in main (argc=3, argv=0x7a00076c) at main.c:588
----------------------
I would like to compare the patch level in different machine.
swlist -l patch
is the only command ?
This is too much information and it would be difficult to compare.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-04-2007 12:34 PM
04-04-2007 12:34 PM
Re: library difference between compile env. and production env.
Our source code use Roque Wave C++ library.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-04-2007 02:32 PM
04-04-2007 02:32 PM
Re: library difference between compile env. and production env.
pg as in Piergiacomo's sig.
>Our customer might use new one, so I would like to know the root of causes.
Right. We need to know why the latest fails.
>Here is the trace of gdb, and please note that we omits some function due to confidential issue.
What's missing except for #0? (You meant you changed some names/strings/libs?)
Basically you are loading a shared lib and the static initializers are running for the file aaa.cpp.
You are creating a map
I'm not sure I can find out why #0 is missing and you got a signal, unless I see the machine code and registers. Please do:
(gdb) frame 1
(gdb) info reg
(gdb) disas
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-04-2007 04:14 PM
04-04-2007 04:14 PM
Re: library difference between compile env. and production env.
I missed just 'cut & past' in previous thread.
(gdb) bt
#0 0xc88243b8 in
warning: Attempting to unwind past bad PC 0xc88243b8
The below is the result.
>(gdb) frame 1
>(gdb) info reg
>(gdb) disas
====================
(gdb) frame 1
#1 0xc89cfbe4 in __rw::__rb_tree<...>::_C_get_link (this=0x79f26f1c)
at /opt/aCC/include_std/rw/tree:409
409 : (_C_next_avail == _C_last ? (_C_add_new_buffer(), _C_next_
avail++)
(gdb) info reg
flags: 6000041
r1: 79f26f1c rp: c89cfbe7
r3: c82a69e0 r4: 79f292f8
r5: 79f26f1c r6: 79f292e8
r7: 79f29338 r8: 1
r9: 0 r10: 0
r11: 79fff1f4 r12: 79fff1f0
r13: 0 r14: ffffffff
r15: 8000084 r16: 40013c30
r17: 40014950 r18: 0
r19: 79f1cb34 r20: 0
r21: c88243b8 r22: 79f26f24
r23: 79feb210 r24: 79f291a0
r25: 79fdedd8 r26: 79f26f1c
dp: 40010648 ret0: 79f29ef1
ret1: 79fb8dc0 sp: 7a002070
r31: 79f26f28 sar: 8
pcoqh: c88243b8 pcsqh: 8f24c00
pcoqt: c88243bc pcsqt: 8f24c00
eiem: ffffffff iir: 43ffff80
isr: 1824002d ior: 6d405058
ipsw: 4fe1f goto: 2
sr4: c89c800 sr0: 8f24c00
sr1: 8f24c00 sr2: 0
sr3: 0 sr5: 8c98000
sr6: 8f24c00 sr7: 8f24c00
cr0: 2e00 cr8: 2e40000
cr9: 10000 ccr: 1
cr12: 2e40 cr13: 2e50000
cr24: 1000 cr25: 3
cr26: 2e50 mpsfu_high: 79f4d070
941c38 mpsfu_ovfl: 0
pad: 912050 fpsr: 8200000
fpe1: 0 fpe2: 0
fpe3: 0 fpe4: 0
fpe5: 0 fpe6: 0
fpe7: 0
(gdb)
(gdb)
(gdb) disas
Dump of assembler code for function _C_get_link__Q2_4__rw9__rb_treeXTP10RSACStri
ngTQ2_3std4pairXTCP10RSACStringTPc_TQ2_4__rw11__select1stXTQ2_3std4pairXTCP10RSA
CStringTPc_TP10RSACString_T16rw_deref_compareXTQ2_3std4lessXT10RSACString_T10RSA
CString_TQ2_3std9allocatorXTQ2_3std4pairXTCP10RSACStringTPc___Fv:
;;; File: /opt/aCC/include_std/rw/tree
;;; 405 _C_link_type _C_get_link() {
0xc89cfb68 <__rw::__rb_tree<...>::_C_get_link(void)>: stw %rp,-0x14(%sp)
..
..
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-04-2007 04:24 PM
04-04-2007 04:24 PM
Re: library difference between compile env. and production env.
It could be a link order problem, but it wouldn't work before.
>The below is the result.
I don't see every byte of the disassembly. (".." isn't helpful.) You need to attach a file with the output.
And while you're at it, do:
(gdb) info shared
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-04-2007 04:32 PM
04-04-2007 04:32 PM
Re: library difference between compile env. and production env.
(gdb) info shared
Shared Object Libraries
flags tstart tend dstart dend dlt
/usr/lib/dld.sl
0x02000200 0xc0010000 0xc0042fbc 0x79ffb000 0x79fff558 0x79ffb0a0
/opt/hpws/apache/lib/libaprutil-0.sl.9
0x03000301 0xc1490000 0xc14b6000 0x79f52000 0x79f54000 0x79f520f0
/opt/hpws/apache/lib/libexpat.sl.1
0x03000301 0xc3ba0000 0xc3bd4000 0x79f56000 0x79f59000 0x79f560f0
/opt/hpws/apache/lib/libapr-0.sl.9
0x03000301 0xc3ac0000 0xc3af8000 0x79f59000 0x79f5c000 0x79f59120
/usr/lib/libm.2
0x03000301 0xc00b0000 0xc00dc000 0x79f5e000 0x79f5f000 0x79f5e28c
/usr/lib/librwtool_v2.2
0x03000301 0xc9600000 0xc97c7000 0x79f79000 0x79fb9000 0x79f7c374
/usr/lib/libnsl.1
0x03000301 0xc0280000 0xc030e000 0x79f64000 0x79f71000 0x79f64430
/usr/lib/libxti.2
0x03000301 0xc0070000 0xc0088000 0x79f5f000 0x79f62000 0x79f5f0e0
/usr/lib/libstd_v2.2
0x03000301 0xc9400000 0xc95f1000 0x79fbd000 0x79fdc000 0x79fbeadc
/usr/lib/libCsup_v2.2
0x03000301 0xc1220000 0xc123c000 0x79fdc000 0x79fdf000 0x79fdc400
/usr/lib/libc.2
0x03000301 0xc0100000 0xc0247000 0x79fe4000 0x79ff7000 0x79fe4794
/usr/lib/libdld.2
0x03000301 0xc0005000 0xc0008000 0x79fdf000 0x79fe0000 0x79fdf00c
/opt/hpws/apache/rsawebagent/Plugins/libaceauth.sl
0x03ff0348 0xc8080000 0xc80e3000 0x79efe000 0x79f06000 0x79efe4f4
/usr/lib/libc.1
0x03000348 0xc0600000 0xc0768000 0x79ecf000 0x79efc000 0x79ecf85c
/usr/lib/libdld.1
0x03000348 0xc00dc000 0xc00dd000 0x79ec8000 0x79ec9000 0x79ec800c
/opt/hpws/apache/modules/mod_access.so
0x03ff0340 0xc0536000 0xc0538000 0x79f4c000 0x79f4d000 0x79f4c00c
/opt/hpws/apache/modules/mod_include.so
0x03ff0340 0xc0fb0000 0xc0fbe000 0x79f4a000 0x79f4c000 0x79f4a028
/opt/hpws/apache/modules/mod_log_config.so
0x03ff0340 0xc0768000 0xc076f000 0x79f49000 0x79f4a000 0x79f49018
/opt/hpws/apache/modules/mod_env.so
0x03ff0340 0xc04af000 0xc04b0000 0x79f48000 0x79f49000 0x79f4800c
/opt/hpws/apache/modules/mod_setenvif.so
0x03ff0340 0xc07dd000 0xc07df000 0x79f47000 0x79f48000 0x79f47010
/opt/hpws/apache/modules/mod_proxy.so
0x03ff0340 0xc1214000 0xc121f000 0x79f45000 0x79f47000 0x79f4502c
/opt/hpws/apache/modules/mod_proxy_connect.so
0x03ff0340 0xc07ea000 0xc07ec000 0x79f44000 0x79f45000 0x79f4400c
/opt/hpws/apache/modules/mod_proxy_ftp.so
0x03ff0340 0xc07f8000 0xc0800000 0x79f42000 0x79f44000 0x79f42010
/opt/hpws/apache/modules/mod_proxy_http.so
0x03ff0340 0xc0e44000 0xc0e4a000 0x79f41000 0x79f42000 0x79f41010
/opt/hpws/apache/modules/mod_mime.so
0x03ff0340 0xc0dec000 0xc0df0000 0x79f40000 0x79f41000 0x79f40010
/opt/hpws/apache/modules/mod_status.so
0x03ff0340 0xc12ac000 0xc12b1000 0x79f3e000 0x79f40000 0x79f3e024
/opt/hpws/apache/modules/mod_autoindex.so
0x03ff0340 0xc12b4000 0xc12bc000 0x79f3c000 0x79f3e000 0x79f3c010
/opt/hpws/apache/modules/mod_asis.so
0x03ff0340 0xc04ef000 0xc04f0000 0x79f3b000 0x79f3c000 0x79f3b008
/opt/hpws/apache/modules/mod_suexec.so
0x03ff0340 0xc053f000 0xc0540000 0x79f3a000 0x79f3b000 0x79f3a00c
/opt/hpws/apache/modules/mod_cgid.so
0x03ff0340 0xc1304000 0xc130c000 0x79f39000 0x79f3a000 0x79f39024
/opt/hpws/apache/modules/mod_cgi.so
0x03ff0340 0xc1384000 0xc138a000 0x79f38000 0x79f39000 0x79f38018
/opt/hpws/apache/modules/mod_negotiation.so
0x03ff0340 0xc13c8000 0xc13d1000 0x79f35000 0x79f36000 0x79f35024
/opt/hpws/apache/modules/mod_dir.so
0x03ff0340 0xc0ced000 0xc0cef000 0x79f34000 0x79f35000 0x79f3400c
/opt/hpws/apache/modules/mod_actions.so
0x03ff0340 0xc076f000 0xc0770000 0x79f33000 0x79f34000 0x79f3300c
/opt/hpws/apache/modules/mod_userdir.so
0x03ff0340 0xc0db9000 0xc0dbb000 0x79f32000 0x79f33000 0x79f3200c
/opt/hpws/apache/modules/mod_alias.so
0x03ff0340 0xc0de9000 0xc0dec000 0x79f31000 0x79f32000 0x79f3100c
/opt/hpws/apache/modules/mod_rewrite.so
0x03ff0340 0xc13f0000 0xc1401000 0x79f2e000 0x79f31000 0x79f2e01c
/opt/hpws/apache/rsawebagent/mod_rsawa_apache.sl
0x03ff0340 0xc76c0000 0xc778c000 0x79f1c000 0x79f2c000 0x79f1cb34
(gdb)
======
(gdb) frame 1
#1 0xc80cfbe4 in __rw::__rb_tree
compare<:less>,RSACString>,std::allocator<:pair>onst,char *>>>::_C_get_link (this=0x79f26f1c)
at /opt/aCC/include_std/rw/tree:409
409 : (_C_next_avail == _C_last ? (_C_add_new_buffer(), _C_next_
avail++)
Current language: auto; currently c++
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-04-2007 04:40 PM
04-04-2007 04:40 PM
Re: library difference between compile env. and production env.
f you think the link order problem, can you refer to documents on docs.hp.com
Thanks,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-04-2007 04:53 PM
04-04-2007 04:53 PM
Re: library difference between compile env. and production env.
I'm not sure if that's it but here is something:
http://h21007.www2.hp.com/dspp/files/unprotected/hpc/cpp/acc_transguide.pdf
See: Global Construction and Destruction
I also didn't see any disasembly yet.
If too long/hard to cut n' paste, you can do this:
(gdb) set redirect-file gdb.out
(gdb) set redirect on
(gdb) disas
(gdb) set redirect off
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-04-2007 05:03 PM
04-04-2007 05:03 PM
Re: library difference between compile env. and production env.
#1 0xc89cfbe4 in __rw::__rb_tree
compare<:less>,RSACString>,std::allocator<:pair>onst,char *>>>::_C_get_link (this=0x79f26f1c)
at /opt/aCC/include_std/rw/tree:409
409 : (_C_next_avail == _C_last ? (_C_add_new_buffer(), _C_next_
avail++)
Current language: auto; currently c++
(gdb) info reg
flags: 6000041
r1: 79f26f1c rp: c89cfbe7
r3: c82a69e0 r4: 79f292f8
r5: 79f26f1c r6: 79f292e8
r7: 79f29338 r8: 1
r9: 0 r10: 0
r11: 79fff1f4 r12: 79fff1f0
r13: 0 r14: ffffffff
r15: 8000084 r16: 40013c30
r17: 40014950 r18: 0
r19: 79f1cb34 r20: 0
r21: c88243b8 r22: 79f26f24
r23: 79feb210 r24: 79f291a0
r25: 79fdedd8 r26: 79f26f1c
dp: 40010648 ret0: 79f29ef1
ret1: 79fb8dc0 sp: 7a002070
r31: 79f26f28 sar: 8
pcoqh: c88243b8 pcsqh: 8f24c00
pcoqt: c88243bc pcsqt: 8f24c00
eiem: ffffffff iir: 43ffff80
isr: 1824002d ior: 6d405058
ipsw: 4fe1f goto: 2
sr4: c89c800 sr0: 8f24c00
sr1: 8f24c00 sr2: 0
sr3: 0 sr5: 8c98000
sr6: 8f24c00 sr7: 8f24c00
cr0: 2e00 cr8: 2e40000
cr9: 10000 ccr: 1
cr12: 2e40 cr13: 2e50000
cr24: 1000 cr25: 3
cr26: 2e50 mpsfu_high: 79f4d070
mpsfu_low---Type
: 941c38 mpsfu_ovfl: 0
pad: 912050 fpsr: 8200000
fpe1: 0 fpe2: 0
fpe3: 0 fpe4: 0
fpe5: 0 fpe6: 0
fpe7: 0
(gdb)
(gdb) disas
Dump of assembler code for function _C_get_link__Q2_4__rw9__rb_treeXTP10RSACStri
ngTQ2_3std4pairXTCP10RSACStringTPc_TQ2_4__rw11__select1stXTQ2_3std4pairXTCP10RSA
CStringTPc_TP10RSACString_T16rw_deref_compareXTQ2_3std4lessXT10RSACString_T10RSA
CString_TQ2_3std9allocatorXTQ2_3std4pairXTCP10RSACStringTPc___Fv:
;;; File: /opt/aCC/include_std/rw/tree
;;; 405 _C_link_type _C_get_link() {
0xc89cfb68 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfb6c <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfb70 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfb74 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfb78 <__rw::__rb_tree
---Type
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
;;; 406 _C_link_type __tmp = _C_free_list;
0xc89cfb7c <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfb80 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfb84 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfb88 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
;;; 407 _C_link_type __tmp2 = _C_free_list ?
0xc89cfb8c <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
---Type
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfb90 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfb94 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfb98 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
cmpib,<>,n 0,%r20,0xc89cfc14 <__rw::__rb_tree
ing *>,rw_deref_compare<:less>,RSACString>,std::allocator<:pa>
;;; 409 : (_C_next_avail == _C_last ? (_C_add_new_buffer(), _C_next
_avail++)
0xc89cfb9c <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
har *>>>::_C_get_link(void)+0x34>: ldw -0x64(%sp),%r21
0xc89cfba0 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfba4 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfba8 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfbac <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfbb0 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfbb4 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
---Type
e<:less>,RSACString>,std::allocator<:pair>
cmpb,=,n %r20,%r21,0xc89cfbdc <__rw::__rb_tree
ring *>,rw_deref_compare<:less>,RSACString>,std::allocator<:p>
;;; 410 : _C_next_avail++);
0xc89cfbb8 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfbbc <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfbc0 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfbc4 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
---Type
0xc89cfbc8 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfbcc <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfbd0 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfbd4 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
b 0xc89cfc08 <__rw::__rb_tree
compare<:less>,RSACString>,std::allocator<:pair>
0xc89cfbd8 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
har *>>>::_C_get_link(void)+0x70>: stw %r21,-0x34(%sp)
;;; 409 : (_C_next_avail == _C_last ? (_C_add_new_buffer(), _C_next
_avail++)
0xc89cfbdc <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
call 0xc89cfb58 <__rw::__rb_tree
ef_compare<:less>,RSACString>,std::allocator<:pair>
0xc89cfbe0 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfbe4 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfbe8 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
---Type
0xc89cfbec <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfbf0 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfbf4 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfbf8 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfbfc <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc00 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
har *>>>::_C_get_link(void)+0x98>: stw %r1,0(%r31)
0xc89cfc04 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc08 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc0c <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
b 0xc89cfc3c <__rw::__rb_tree
compare<:less>,RSACString>,std::allocator<:pair>
0xc89cfc10 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
;;; 408 (_C_free_list = _RWSTD_STATIC_CAST(_C_link_type,(_C_free_li
st->_C_right_link)), __tmp)
---Type
0xc89cfc14 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc18 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc1c <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc20 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc24 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc28 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
har *>>>::_C_get_link(void)+0xc0>: ldw -0x64(%sp),%r20
0xc89cfc2c <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc30 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc34 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc38 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
;;; 407 _C_link_type __tmp2 = _C_free_list ?
0xc89cfc3c <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc40 <__rw::__rb_tree
---Type
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
;;; 411 __tmp2->_C_parent_link = NULL;
0xc89cfc44 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc48 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc4c <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
;;; 412 __tmp2->_C_left_link = NULL;
0xc89cfc50 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc54 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
---Type
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc58 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
;;; 413 __tmp2->_C_right_link = NULL;
0xc89cfc5c <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc60 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc64 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
;;; 414 __tmp2->_C_color_field = _C_rb_tree_node::_C_rb_red;
0xc89cfc68 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
har *>>>::_C_get_link(void)+0x100>: ldw -0x34(%sp),%r20
0xc89cfc6c <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
;;; 415 return __tmp2;
0xc89cfc70 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc74
<__rw::__rb_tree
t1st<:pair>,RSACString *>,rw_deref_compare<:les>
_C_get_link(void)+0x10c>:
b 0xc89cfc7c <__rw::__rb_tree
compare<:less>,RSACString>,std::allocator<:pair>
0xc89cfc78 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
;;; 416 }
---Type
0xc89cfc7c <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc80 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc89cfc84 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
End of assembler dump.
(gdb)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-04-2007 07:37 PM
04-04-2007 07:37 PM
Re: library difference between compile env. and production env.
Next time you should do:
(gdb) set print max-symbolic-offset 1
(This suppresses the long demangled name at the start of each instruction.)
Anyway, what happened is that you just started a call to _C_add_new_buffer:
;;; 409 : (_C_next_avail == _C_last ? (_C_add_new_buffer(), _C_next_avail++)
0xc89cfbdc <_C_get_link+0x74>: call 0xc89cfb58 <_C_add_new_buffer>
0xc89cfbe0 <_C_get_link+0x78>: ldw -0x64(%sp),%r26
Can you do this:
(gdb) disas 0xc89cfb58 0xc89cfb58+4*8
This should be an import stub and look something like this:
0x1476c: ldw 0x434(%r19),%r21
0x14770: ldw 0x438(%r19),%r19
0x14774: ldsid (%r21),%r1
0x14778: mtsp %r1,%sr0
0x1477c: be 0(%sr0,%r21)
0x14780: stw %rp,-0x18(%sp)
The value you have in $r21 seems bad but the value in $r19 matches mod_rsawa_apache.sl. (Is that your lib?)
If this is the problem, it could be due to linkage table corruption.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-04-2007 08:05 PM
04-04-2007 08:05 PM
Re: library difference between compile env. and production env.
(gdb) disas 0xc80cfb68 0xc80cfb68+4*8
Dump of assembler code from 0xc80cfb68 to 0xc80cfb88:
;;; File: /opt/aCC/include_std/rw/tree
;;; 405 _C_link_type _C_get_link() {
0xc80cfb68 <__rw::__rb_tree
w::__select1st<:pair>,RSACString *>,rw_deref_compar
e<:less>,RSACString>,std::allocator<:pair>
0xc80cfb6c: ldo 0x40(%sp),%sp
0xc80cfb70: stw %r19,-0x20(%sp)
0xc80cfb74: nop
0xc80cfb78: stw %r26,-0x64(%sp)
;;; 406 _C_link_type __tmp = _C_free_list;
0xc80cfb7c: ldw -0x64(%sp),%r20
0xc80cfb80: ldo 4(%r20),%r21
0xc80cfb84: ldw 0(%r21),%r22
End of assembler dump.
============
> mod_rsawa_apache.sl. (Is that your lib?) Yes
How will I fix the problem if it could be due to linkage table corruption.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-04-2007 08:55 PM
04-04-2007 08:55 PM
Re: library difference between compile env. and production env.
If you think that it is link problem,
can you tell me whether or not the following lonk is OK?
-lrwtool_v2 -lstd_v2 -lCsup_v2 -lc_r -lc
We use the above link in Makefile.