- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - HP-UX
- >
- Binary that ran fine on 10.20 doesn't run on 11i 6...
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
10-01-2009 01:58 PM
10-01-2009 01:58 PM
I have an old application that used to run on an old 10.20 server and I'm trying to migrate to HP-UX 11i 64bits (vPar). When I run it on my new OS, it fails with a "Bus error" message (no core dump).
I traced it with wdb and apparently it tries to reach an address space that isn't allowed by the system.
We no longer have support for this application.Is there a way for me to "encapsulate" this as a 32bit application? In other words, to make it act as if it was on a 32 bit OS?
Thanks,
Rikk
Solved! Go to Solution.
- Tags:
- SIGBUS
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-01-2009 03:05 PM
10-01-2009 03:05 PM
Re: Binary that ran fine on 10.20 doesn't run on 11i 64bits
Well, this sounds as if your program needs to allocate more space than the current OS allows for a 32bit program (kernel parameters in this vPar?). I doubt that the 64bit OS is causing the error. It is very likely a coding error that happened to work at 10.20 but would fail at 11.00 32 or 64 bits. If you don't have the ability to fix the bug, you'll have to keep a 10.20 machine forever...
Bill Hassell, sysadmin
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-01-2009 03:33 PM
10-01-2009 03:33 PM
Re: Binary that ran fine on 10.20 doesn't run on 11i 64bits
The program could be coded using PA-RISC functionality that is not supported any more.
AIRES will not run everything.
A recompile with a modern compiler will probably point out some issues.
SEP
Owner of ISN Corporation
http://isnamerica.com
http://hpuxconsulting.com
Sponsor: http://hpux.ws
Twitter: http://twitter.com/hpuxlinux
Founder http://newdatacloud.com
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-01-2009 03:41 PM
10-01-2009 03:41 PM
Re: Binary that ran fine on 10.20 doesn't run on 11i 64bits
> SEP: AIRES will not run everything. A recompile with a modern compiler will probably point out some issues.
I don't think we know the hardware on which Richard is running. Aries might not be involved at all.
That said, Aries runs "well-behaved" PA-RISC code unless that code was compiled on HP-UX version 8.x or earlier. Have a look at the Aries(5) manpages under "LIMITATIONS".
Regards!
...JRF...
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-01-2009 09:27 PM
10-01-2009 09:27 PM
Re: Binary that ran fine on 10.20 doesn't run on 11i 64bits
This isn't helpful. There are at least 4 versions and two architectures. Please provide "uname -a".
>I traced it with wdb and apparently it tries to reach an address space that isn't allowed by the system.
You mean you have a bad pointer. Saying "address space" is too hand wavy.
Can you provide this at the abort:
(gdb) bt
(gdb) info reg
(gdb) disas $pc-4*16 $pc+4*4
>to make it act as if it was on a 32 bit OS?
The one purpose of HP-UX is to make 32 bit applications run correctly. Why would you think this is your problem?
>Bill: this sounds as if your program needs to allocate more space than the current OS allows for a 32bit program
I'm not sure how you know it sounds like anything except it has a signal 10?
(It does sound like we need more info. :-)
>I doubt that the 64bit OS is causing the error. It is very likely a coding error that happened to work at 10.20
Right. Unless it is a configuration issue. Or an issue with large PIDs, etc.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-15-2009 12:15 PM
10-15-2009 12:15 PM
Re: Binary that ran fine on 10.20 doesn't run on 11i 64bits
Thank you for you interest in this issue.
I am assuming that this is not a â Well behavedâ PA-RISC code but unfortunately, the company that produced this code doesnâ t exist anymore. There is no longer any support for this piece of code.
To my knowledge, weâ re not using ARIES since this runs PA-RISC apps on Itanium. Iâ m running on 11.11 PA-RISC.
Uname â a reports:
HP-UX legapdev B.11.11 U 9000/800 2301639705 unlimited-user license
Iâ ve attached the log of the wdb instructions, asked by Dennis, to this post. I do seem to have a bad pointer. Sorry for the hand wavy comment as English is not my maternal language.
By the way, Iâ m running this on a cell of an rp7440 server.
Regards,
P.S. I will award points as soon as I finish this post. Thanks again.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-15-2009 12:22 PM
10-15-2009 12:22 PM
Re: Binary that ran fine on 10.20 doesn't run on 11i 64bits
Hello all,
Thank you for you interest in this issue.
I am assuming that this is not a "Well behaved" PA-RISC code but unfortunately, the company that produced this code doesn't exist anymore.There is no longer any support for this piece of code.
To my knowledge, we're not using ARIES since this runs PA-RISC apps on Itanium. I'm running on 11.11 PA-RISC.
Uname -a reports:
HP-UX legapdev B.11.11 U 9000/800 2301639705 unlimited-user license
I've attached the log of the wdb instructions, asked by Dennis, to this post. I do seem to have a bad pointer. Sorry for the hand wavy comment as English is not my maternal language.
By the way, I'm running this on a cell of an rp7440 server.
Regards,
P.S. I will award points as soon as I finish this post. Thanks again.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-15-2009 10:17 PM
10-15-2009 10:17 PM
Re: Binary that ran fine on 10.20 doesn't run on 11i 64bits
Oops. Looks like a dead-end to me. :(
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-15-2009 10:58 PM
10-15-2009 10:58 PM
Re: Binary that ran fine on 10.20 doesn't run on 11i 64bits
If you run "chatr
If the third quadrant is disabled, run "/usr/bin/chatr +q3p enable
Ig the third quadrant is enabled, but the fourth is not, run "/usr/bin/chatr +q4p enable
Again, this is just a guess. If it doesn't make any difference, you can revert the changes by running the same comands and use "disable" instead of "enable"
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-16-2009 01:32 AM
10-16-2009 01:32 AM
Re: Binary that ran fine on 10.20 doesn't run on 11i 64bits
0xc01f51b4: addil L'-0x800,%r19,%r1
0xc01f51b8: ldw 0x4b0(%r1),%r1
0xc01f51bc: ldw 0(%r1),%r31
0xc01f51c0: ldw 0x20(%r31),%r21
0xc01f51c4: ldw 8(%r21),%rp <<<
0xc01f51c8: ldi 0x800,%r22
This is fetching a shlib global/static. And the value in r21 is bad: 7b045cc0
SP is 7f7f0c10, so it isn't a stack overflow.
It doesn't look like out of heap space.
Is the executable stripped?
What shlibs does it use? (What does chatr(1) show?)
Does "info shared" work in gdb?
I hope you are debugging the core file on the same system that produced it?
How big is the core file? If no proprietary info in it, can you make it available?
>Wim: Since you say that the application seems to want to allocate more memory than it is allowed, maybe
I'm not sure how you can determine this from the register dump?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-16-2009 07:37 AM
10-16-2009 07:37 AM
Re: Binary that ran fine on 10.20 doesn't run on 11i 64bits
>If you run "chatr
Yes, they are.
>If the third quadrant is disabled, run "/usr/bin/chatr +q3p enable
No change, still get the error.
>If the third quadrant is enabled, but the fourth is not, run "/usr/bin/chatr +q4p enable
I get a new error, as follow:
root@legapdev [/intercap/version78/com]> /intercap/version78/com/editor
crt0: ERROR: mmap failed for dld (text) errno:000000012
In response to Denis Handly:
Sorry for the confusion, when the program aborts, it actually does generate a core file. I've ran the program through gdb, with the core file, and I've included the output in a file called errorlog, which I've included in a tar.gz bundle, attached to this post. This gz also contains the output of the chatr command.
I can't include the program (4 megs) or the core (23 Megs). It can't compress under 1Mb.
Your help is very much appreciated. Thank you!
Richard
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-16-2009 07:48 AM
10-16-2009 07:48 AM
Re: Binary that ran fine on 10.20 doesn't run on 11i 64bits
root@legapdev [/tools/legapdev]> file /intercap/version78/com/editor
/intercap/version78/com/editor: PA-RISC1.1 shared executable dynamically linked
root@legapdev [/tools/legapdev]> what /intercap/version78/com/editor
/intercap/version78/com/editor:
root@legapdev [/tools/legapdev]> nm /intercap/version78/com/editor
nm: /intercap/version78/com/editor: no symbols
root@legapdev [/tools/legapdev]>
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-16-2009 08:25 AM
10-16-2009 08:25 AM
Re: Binary that ran fine on 10.20 doesn't run on 11i 64bits
This dog is not going to hunt.
The program needs to be recompiled from source if you have it.
SEP
Owner of ISN Corporation
http://isnamerica.com
http://hpuxconsulting.com
Sponsor: http://hpux.ws
Twitter: http://twitter.com/hpuxlinux
Founder http://newdatacloud.com
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-17-2009 02:43 AM
10-17-2009 02:43 AM
Solutioncrt0: ERROR: mmap failed for dld (text) errno:000000012
Yes, you have to have some shared memory and your 9.x application probably doesn't like +q4p enable.
>I've ran the program through gdb, with the core file
You should download the latest gdb and maybe it will work better and recognize those shlibs?
shared library list:
dynamic /usr/lib/libcl.sl
dynamic /lib/libm.sl
dynamic /lib/libc.sl
This is very strange. It almost means this was created on 8.0 or 9.0?
A program created on 10.20 should have versioned shlibs: /usr/lib/libc.1
You could try tusc to see which shlib is being opened?
tusc -fp -ea -o tusc.out /intercap/version78/com/editor
>(gdb) info shared
No shared libraries loaded at this time.
Well this is broken. gdb just got through saying:
Reading symbols from /usr/lib/dld.sl
Reading symbols from /usr/lib/libcl.0
Reading symbols from /usr/lib/libisamstub.1
Reading symbols from /lib/libm.0
Reading symbols from /lib/libc.0
Reading symbols from /usr/lib/libdld.1
Aw, these *.0 shlibs indicate the application was developed on 9.x or earlier.
>I can't include the program (4 megs) or the core (23 Megs). It can't compress under 1Mb.
Is it worth it to you to provide a ftp site where I can pick them up?
>nm: /intercap/version78/com/editor: no symbols
(That's awful nice of them. )-:
>old 10.20 server
Do you still have it, to copy those above .0 shlibs? (Caution those are symlinks and you need to following them.)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-19-2009 07:23 AM
10-19-2009 07:23 AM
Re: Binary that ran fine on 10.20 doesn't run on 11i 64bits
crt0: ERROR: mmap failed for dld (text) errno:000000012
>Yes, you have to have some shared memory and your 9.x application probably doesn't like +q4p enable.
I have disabled +q4p and +q3p.
>You should download the latest gdb and maybe it will work better and recognize those shlibs?
I have a fairly recent version on HP Wildebeest (5.9). There is a version 6.0 but I'm not part of Developer & Solution Partner Program (DSPP) so I can't download it. Until further notice, I'm stuck with this version.
>This is very strange. It almost means this was created on 8.0 or 9.0?
A program created on 10.20 should have versioned shlibs: /usr/lib/libc.1
This is quite possibly the case. It's a very old application but unfortunately it is still used in our production environment.
>You could try tusc to see which shlib is being opened?
tusc -fp -ea -o tusc.out /intercap/version78/com/editor
I copy of the tusc log is attached to this post.
>Is it worth it to you to provide a ftp site where I can pick them up?
I'll see what I can do. We have no public ftp site (against corporate policy). The tar-gzipped file is only 2 mb. I could always email.
>Do you still have it, to copy those above .0 shlibs? (Caution those are symlinks and you need to following them.)
Strange, my 10.20 box doesn't seem to have these libraries. Still, I can run the application.
root@old-p1se [/lib]> ll /usr/lib/libcl.0
/usr/lib/libcl.0 not found
root@old-p1se [/lib]> ll /lib/libm.0
/lib/libm.0 not found
root@old-p1se [/lib]> ll /lib/libc.0
/lib/libc.0 not found
root@old-p1se [/lib]> uname -a
HP-UX old-p1se B.10.20 A 9000/816 940328261 two-user license
root@old-p1se [/lib]>
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-19-2009 09:55 PM
10-19-2009 09:55 PM
Re: Binary that ran fine on 10.20 doesn't run on 11i 64bits
Anyone can register at DSPP to download it.
>I copy of the tusc log is attached to this post.
This indicates it is failing right away after it prints the version. It seems to show a different abort location/instruction.
>The tar-gzipped file is only 2 mb. I could always email.
Sure, you should know how to decode my hp.com address, first.last ....
Also what patch to you have for /usr/lib/libc.0 or libc.1?
I have:
$ ll /usr/lib/libc.1
-r-xr-xr-x 1875968 Feb 7 2005 /usr/lib/libc.1*
$ what /usr/lib/libc.1
/usr/lib/libc.1:
PATCH-PHCO_32718 for 10.20; for 10.30, 11.x compatibility libc.1_ID@@/main/r10dav/libc_dav/libc_dav_cpe//1 /ux/core/libs/libc/shared_pa1/libc.1_ID
Feb 4 2005 10:03:03
>my 10.20 box doesn't seem to have these libraries. Still, I can run the application.
The 10.20 box would just use the libs in question, ones with .sl. Only on 11.00 and later, would it try those .0 shlibs.
So save those .sl libs from 10.20 and put them in a directory and rename them to .0.
Then use "chatr +s enable editor" and then export SHLIB_PATH to that directory.