[omniORB] More problems porting omniORB.
Mike Bendickson
bendi003@tc.umn.edu
Wed, 9 Jun 1999 15:34:44 -0500
This is a multi-part message in MIME format.
------=_NextPart_000_00DA_01BEB28D.99829F80
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
I'm trying to port omniORB to UnixWare 2.1.2 using the egcs 1.1.2 =
release. UnixWare 2 has UI threads so I'm working off of the Solaris =
port. The release compiles with only a few warnings.
Running "omniNames -start 12345" gives me a bus error.
I had posted a message earlier that included output from gdb where I =
would get a SIGWAITING signal. I believe that was normal, and I ended =
up telling gdb to not print the signal and send it on to the program =
which was not the default behavior. handle SIGWAITING noprint noignore =
nostop pass.
Here's what I get from gdb now:
<stuff deleted>
(gdb)
parse_BOA_args (argc=3D@0x8047c2c, argv=3D0x80dabe8,
orb_identifier=3D0x8087d04 "omniORB2_BOA") at corbaBoa.cc:453
453 CORBA::Boolean orbId_match =3D 0;
(gdb)
454 if (orb_identifier && strcmp(orb_identifier,myBOAId) !=3D 0)
(gdb)
464 int idx =3D 1;
(gdb)
465 while (argc > idx)
(gdb)
470 argv[idx][2] =3D=3D 'O' && argv[idx][3] =3D=3D 'A'))
(gdb)
477 if (strcmp(argv[idx],"-BOAid") =3D=3D 0) {
(gdb)
500 if (strcmp(argv[idx],"-BOAiiop_port") =3D=3D 0) {
(gdb)
501 if ((idx+1) >=3D argc) {
(gdb)
510 (port =3D=3D 0 || port >=3D 65536)) {
(gdb)
519 if ((hostname =3D =
(CORBA::Char*)getenv(OMNIORB_USEHOSTNAME_VAR))=3D=3DNULL) {
(gdb)
520 hostname =3D (CORBA::Char*)"";
(gdb)
523 _tcpEndpoint e (hostname,(CORBA::UShort)port);
(gdb)
tcpSocketEndpoint (this=3D0x8047a6c, h=3D0x8089905 "", p=3D12345) at =
tcpSocket.cc:296
296 : Endpoint((CORBA::Char *)tcpSocketEndpoint::protocol_name)
(gdb)
Program received signal SIGBUS, Bus error.
0xbff8bdd0 in _thr_sigacthandler () from /usr/lib/libthread.so.1
(gdb)
Single stepping until exit from function _thr_sigacthandler,
which has no line number information.
Program terminated with signal SIGBUS, Bus error.
Searching the newsgroup archives, I can find no reference to =
_thr_sigacthandler. It seems that I am the first person in history to =
have this problem. Any clues as to what might be happening here? Does =
_thr_sigacthandler() have anything to do with the problem, or is it just =
catching the SIGBUS signal after it happens? What should I be looking =
at?
Thanks,
-Mike Bendickson
bendi003@tc.umn.edu
------=_NextPart_000_00DA_01BEB28D.99829F80
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content=3D"text/html; charset=3Diso-8859-1" =
http-equiv=3DContent-Type>
<META content=3D"MSHTML 5.00.2314.1000" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT size=3D2>I'm trying to port omniORB to UnixWare =
2.1.2 using the=20
egcs 1.1.2 release. UnixWare 2 has UI threads so I'm working off =
of the=20
Solaris port. The release compiles with only a few=20
warnings.</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=3D2>Running "omniNames -start 12345" gives me a bus=20
error.</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=3D2>I had posted a message earlier that included output =
from gdb=20
where I would get a SIGWAITING signal. I believe that was normal, =
and I=20
ended up telling gdb to not print the signal and send it on to the =
program which=20
was not the default behavior. handle SIGWAITING noprint noignore =
nostop=20
pass.</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=3D2>Here's what I get from gdb now:</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=3D2><stuff deleted></FONT></DIV>
<DIV><FONT size=3D2>(gdb)<BR>parse_BOA_args (argc=3D@0x8047c2c,=20
argv=3D0x80dabe8,<BR> orb_identifier=3D0x8087d04 =
"omniORB2_BOA")=20
at corbaBoa.cc:453<BR>453 =
CORBA::Boolean=20
orbId_match =3D 0;<BR>(gdb)<BR>454 =
if=20
(orb_identifier && strcmp(orb_identifier,myBOAId) !=3D=20
0)<BR>(gdb)<BR>464 int idx =3D=20
1;<BR>(gdb)<BR>465 while (argc >=20
idx)<BR>(gdb)<BR>470  =
; =20
argv[idx][2] =3D=3D 'O' && argv[idx][3] =3D=3D=20
'A'))<BR>(gdb)<BR>477 &nbs=
p; =20
if (strcmp(argv[idx],"-BOAid") =3D=3D 0)=20
{<BR>(gdb)<BR>500 &n=
bsp; if=20
(strcmp(argv[idx],"-BOAiiop_port") =3D=3D 0)=20
{<BR>(gdb)<BR>501 &n=
bsp; =20
if ((idx+1) >=3D argc)=20
{<BR>(gdb)<BR>510 &n=
bsp; =20
(port =3D=3D 0 || port >=3D 65536)) {<BR>(gdb)</FONT></DIV>
<DIV> </DIV>
<DIV><FONT=20
size=3D2>519 &=
nbsp; =20
if ((hostname =3D =
(CORBA::Char*)getenv(OMNIORB_USEHOSTNAME_VAR))=3D=3DNULL)=20
{<BR>(gdb)<BR>520 &n=
bsp; =20
hostname =3D=20
(CORBA::Char*)"";<BR>(gdb)<BR>523 &nbs=
p; =20
_tcpEndpoint e =
(hostname,(CORBA::UShort)port);<BR>(gdb)<BR>tcpSocketEndpoint=20
(this=3D0x8047a6c, h=3D0x8089905 "", p=3D12345) at=20
tcpSocket.cc:296<BR>296 =
:=20
Endpoint((CORBA::Char =
*)tcpSocketEndpoint::protocol_name)<BR>(gdb)</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=3D2>Program received signal SIGBUS, Bus =
error.<BR>0xbff8bdd0 in=20
_thr_sigacthandler () from /usr/lib/libthread.so.1<BR>(gdb)<BR>Single =
stepping=20
until exit from function _thr_sigacthandler,<BR>which has no line number =
information.</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=3D2>Program terminated with signal SIGBUS, Bus=20
error.<BR></FONT></DIV>
<DIV><FONT size=3D2></FONT> </DIV>
<DIV><FONT size=3D2>Searching the newsgroup archives, I can find no =
reference to=20
_thr_sigacthandler. It seems that I am the first person in history =
to have=20
this problem. Any clues as to what might be happening here? =
Does=20
_thr_sigacthandler() have anything to do with the problem, or is it just =
catching the SIGBUS signal after it happens? What should I be =
looking=20
at?</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=3D2>Thanks,</FONT></DIV>
<DIV><FONT size=3D2>-Mike Bendickson</FONT></DIV>
<DIV><FONT size=3D2> <A=20
href=3D"mailto:bendi003@tc.umn.edu">bendi003@tc.umn.edu</A></FONT></DIV><=
/BODY></HTML>
------=_NextPart_000_00DA_01BEB28D.99829F80--