[omniORB] AIX runtime bomb

Andrey Slepuhin pooh@msu.ru
Mon, 18 Jan 1999 12:38:55 +0300 (MEST)


On 16-Jan-99 Anders Vstling wrote:
> Hi
> 
> AIX 4.2 RS/6000 (not PowerPC, only "Power")
> EGCS 1.1
> Omniorb 2.6.1 (built using EGCS)
> 
> My app bombs in
> 
> (gdb) brea main
> Breakpoint 1 at 0x1000168c: file main.cxx, line 464.
> (gdb) r
> Starting program: /home/anos/acid/bin/acid
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0xd0311644 in pthread_key_create ()
> (gdb) bt
>#0  0xd0311644 in pthread_key_create ()
>#1  0xd031158c in pthread_key_create ()
>#2  0xd0165538 in omni_thread::init_t::init_t ()
>#3  0xd0167ef4 in global constructors keyed to omni_mutex::omni_mutex ()
> 
>#4  0xd01685e0 in _GLOBAL__FI_libomnithread_so ()
>#5  0x100226ac in __do_global_ctors ()
>#6  0x10022724 in __main ()
>#7  0x10001688 in main () at main.cxx:455
>#8  0x100001a0 in __start ()
> (gdb) quit
> The program is running.  Exit anyway? (y or n) y
> 
> The program works fine on Linux

How do you link your program? The SIGSEGV above is typical when
you link your program with non-thread-safe version of libc.
Type dump -H <your_progaram_name> and be sure that your program is
linked against libc_r.a.

Also note that by default egcs installation is not thread-safe.

Regards,
Andrey.