[omniORB] precompiled omnithread.so causes problem with IRIX6.5

Bruce Visscher visschb@rjrt.com
Mon, 18 Dec 2000 12:16:15 -0500


Vijay,

I remember one of the problems I encountered in early attempts to port
omniORB to OpenVMS was that the pthread_setprio returns the old priority
value on success, rather than 0 for some versions of OpenVMS.

So you will find:

#ifdef __VMS
// pthread_setprio returns old priority on success (draft version 4:
// OpenVms version < 7)
#define THROW_ERRORS(x) { if ((x) == -1) throw omni_thread_fatal(errno);
}
#else
#define THROW_ERRORS(x) { if ((x) != 0) throw omni_thread_fatal(errno);
}
#endif

in src/lib/omnithread/posix.cc

You might want to check if this logic helps your platform as well.  I
don't know of a case where a posix thread function will return anything
other than -1 as the result of an error so I think this is safe in any
case.

HTH,

Bruce Visscher

Vijay wrote:
> 
> Hi All
> 
> I using omniORB3 for porting on SGI IRIX 6.5
> CC compiler MIPSpro Compilers: Version 7.2.1.2m
> I edited mips_irix_6.5_n32 file accordingly.
> 
> I am able to run all those POA examples provided, without any
> problem with given libraries for SGI
> As and when I try to use those libraries with my application, my
> application exits prematurely.
> 
> Then I tried to debug it , and found
> "PthreadSupportThreadPriority"   causes the problem
> Then I build libomnithread.so without
> "PthreadSupportThreadPriority" cxx flag.
> And used this .so along with other pre compiled libraries, now it
> works fine.
> 
> What is the significance of "PthreadSupportThreadPriority" this
> cxx flag.
> If I compiled libraries without this flag, will it cause any
> problem?
> Pl. explain in detail.
> 
> -Regards
> 
> Vijay...

-- 

Bruce Visscher                                        visschb@rjrt.com
CONFIDENTIALITY NOTE:  This e-mail message, including any attachment(s), contains information that may be confidential, protected by the attorney-client or other legal privileges, and/or proprietary non-public information.  If you are not an intended recipient of this message or an authorized assistant to an intended recipient, please notify the sender by replying to this message and then delete it from your system.  Use, dissemination, distribution, or reproduction of this message and/or any of its attachments (if any) by unintended recipients is not authorized and may be unlawful.