A difficult question about locale_mutex uninitialized

FCG WANG Baohua Baohua.WANG@alcatel-sbell.com.cn
Thu Sep 7 02:29:00 GMT 2006

Dear All:
 We met a problem when using GCC libstdc++.a  on PowerPC-OSE platform(it use cross-compile tool with GCC 3.4.1). 
When starting our application("core_supervisor"), the OSE operation system always outputs the following message:

SEH: System call: ose_mutex_lock
SEH: Error: A pointer to an uninitialized mutex (at 0x00b27988) was presented to
 the kernSEH: Information about current process "core_supervisor"
SEH: Pid 0x0001000b bid 0x00010008 progpid 0x00000000
SEH: Callstack backtrace:
SEH: FrameAddress ReturnAddress FrameSize
SEH:  0x0aa54390           -         -
SEH: Analyzing pool of faulty process

After looked up our system.map file, we found that it always refer the following pointer:

 .bss        0x00b27988       0x20 /vobs/rtosdev/OSE/gcc_solaris2_powerpc_3.4.2/powerpc-eabi/lib/nof/libstdc++.a(locale_init.o)
             0x00b27988          __gnu_internal::locale_mutex

I want to know how to find the bug? 
It is the problem of the libstdc++ or our application ? 
How to rightly initialize the locale_mutex ? 
Why it isn't initialized in  libstdc++.a under OSE ?

thanks a lot.

More information about the Gcc-help mailing list