[SR-Users] Kamailio Unexpectedly Terminating

Daniel-Constantin Mierla miconda at gmail.com
Mon Jul 2 21:27:51 CEST 2012


Hello,

for solaris sparc64 you have to find the option for compiler not to 
build with strict alignment requirement for structures. I checked 
quickly on the web in some man pages, but I am not sure I got the right 
solution (what I previously sent on this thread).

If anyone can allocate resources to check all the structure, will be 
another variant, at some time/money expence, but I guess the fast will 
be the right flag to compiler.

Cheers,
Daniel

On 7/2/12 12:47 AM, Omar Labs 188 Gmail wrote:
> I tried in solaris the version kamailio 3.3.0 Bus error. For solaris I have had that same issue in any version above the 1.4.3.
>
> If i test in Suse, kamailio crashes when the radius or Diameter module is enabled. this i tested with versions 3.1 3.2 i am checking if i can get the gdb for all this.
>
> I was unable to build it yet for 3.3.0
>
> thank you
>
> O
>
> On Jun 30, 2012, at 8:54 PM, Omar Labs 188 Gmail wrote:
>
>> Just to let you know
>>
>> I made a lot of tests using different modules including carrierroute, I do have the bus error also after the first call and core dump.
>>
>>
>> thank you
>> O
>>
>>
>>
>>
>>
>> On Jun 27, 2012, at 11:45 PM, Akan wrote:
>>
>>> Daniel,
>>>
>>> i did a repull from git, compiled, installed and re-test of Kamailio and got the same error in the same program's location as previous (in tm_funcs.c). Here are the commands that I entered to make sure I did everything correctly:
>>>
>>> mkdir -p /usr/local/src/kamailio/kamailio-3.2-noalignment
>>> cd /usr/local/src/kamailio/kamailio-3.2-noalignment
>>> git clone --depth 1 git://git.sip-router.org/sip-router kamailio
>>> cd kamailio
>>> |gmake proper
>>> gmake prefix=/opt/kamailio-3.2 FLAVOUR=kamailio cfg
>>> vi modules.lst
>>> | gmake prefix=/opt/kamailio-3.2 Q=0 CC_EXTRA_OPTS=|-mno-faster-structs all
>>> |gmake prefix=/opt/kamailio-3.2 Q=0 CC_EXTRA_OPTS=|-mno-faster-structs install
>>>
>>> Makefile:363: config.mak: No such file or directory
>>> normal Makefile.defs exec
>>> target architecture <sparc64>, host architecture <sparc64>
>>> generating autover.h ...
>>> making config...
>>> Makefile.defs defs skipped
>>> gcc -g -O9 -funroll-loops -m64 -mcpu=ultrasparc -mtune=ultrasparc -fno-strict-overflow -ftree-vectorize -Wall -mno-faster-structs   -DNAME='"ser"' -DVERSION='"3.2.3"' -DARCH='"sparc64"' -DOS='solaris_' -DOS_QUOTED='"solaris"' -DCOMPILER='"gcc 4.6.2"' -D__CPU_sparc64 -D__OS_solaris -DSER_VER=3002003 -DCFG_DIR='"/opt/kamailio-3.2/etc/ser/"' -DPKG_MALLOC -DSHM_MEM -DSHM_MMAP -DDNS_IP_HACK -DUSE_IPV6 -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLACKLIST -DUSE_NAPTR -DWITH_XAVP -DDBG_QM_MALLOC -DUSE_TLS -DTLS_HOOKS -DFAST_LOCK -DADAPTIVE_WAIT -DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM -DSPARC64_MODE -DHAVE_GETIPNODEBYNAME -DHAVE_SYS_SOCKIO_H -DHAVE_SCHED_YIELD -DHAVE_ALLOCA_H -DUSE_SIGACTION -DHAVE_DEVPOLL -DHAVE_SELECT -DHAVE_FILIO_H   -c endianness.c -o endianness.o -MMD -MP
>>> gcc -g -O9 -funroll-loops -m64 -mcpu=ultrasparc -mtune=ultrasparc -fno-strict-overflow -ftree-vectorize -Wall -mno-faster-structs   -DNAME='"ser"' -DVERSION='"3.2.3"' -DARCH='"sparc64"' -DOS='solaris_' -DOS_QUOTED='"solaris"' -DCOMPILER='"gcc 4.6.2"' -D__CPU_sparc64 -D__OS_solaris -DSER_VER=3002003 -DCFG_DIR='"/opt/kamailio-3.2/etc/ser/"' -DPKG_MALLOC -DSHM_MEM -DSHM_MMAP -DDNS_IP_HACK -DUSE_IPV6 -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLACKLIST -DUSE_NAPTR -DWITH_XAVP -DDBG_QM_MALLOC -DUSE_TLS -DTLS_HOOKS -DFAST_LOCK -DADAPTIVE_WAIT -DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM -DSPARC64_MODE -DHAVE_GETIPNODEBYNAME -DHAVE_SYS_SOCKIO_H -DHAVE_SCHED_YIELD -DHAVE_ALLOCA_H -DUSE_SIGACTION -DHAVE_DEVPOLL -DHAVE_SELECT -DHAVE_FILIO_H   -c select_buf.c -o select_buf.o -MMD -MP
>>>
>>> ||
>>> Thanks
>>>
>>> Nathaniel
>>>
>>> |
>>> On 6/25/2012 3:05 AM, Daniel-Constantin Mierla wrote:
>>>> Hello,
>>>>
>>>> thanks for troubleshooting further -- as I expected, it is a memalign problem, but some confusing reports by not using always the patches I made to registrar module to align the structure, made thinking is something else. Now is no longer in registrar, but in another module.
>>>>
>>>> There might be many of these, can you try to compile first without strict alignment to 8 bytes? Checking quickly to gcc, the option should be |-mno-faster-structs
>>>>
>>>> So try:
>>>>
>>>> make proper
>>>> make FLAVOUR=kamailio cfg|
>>>> make Q=0 CC_EXTRA_OPTS=|-mno-faster-structs all|
>>>> ...
>>>>
>>>> By providing Q=0, you will see all compile flags, verify that |-mno-faster-structs is there.
>>>>
>>>> Cheers,
>>>> Daniel
>>>> |
>>>> On 6/22/12 3:26 PM, Akan wrote:
>>>>> Hello,
>>>>>
>>>>> After doing some research, this is what I found out. On Solaris Sparc 64bit system, there is a mandatory alignment of memory accesses and also for data types. I went thru the core dump, disassembled the code and located the instruction that produced the error. The registers addresses in questioned are on a 4 byte alignment but not an 8 byte or 16 byte alignment. .The earlier patch must have forced the alignment which is why the error did not occur in the program common.c. It looks like there is a similar situation in t_funcs.c.
>>>>>
>>>>> Here is a link that I found that can better explain:
>>>>> http://blog.jgc.org/2007/04/debugging-solaris-bus-error-caused-by.html
>>>>>
>>>>> Core was generated by `/opt/kamailio-3.2/sbin/kamailio'.
>>>>> Program terminated with signal 10, Bus error.
>>>>> #0  0xffffffff7bd2b7bc in t_relay_to (p_msg=0x10047c698, proxy=0x0, proto=0, replicate=0) at t_funcs.c:352
>>>>> 352                     if (!t_reply( t, p_msg , 100 ,
>>>>>
>>>>> 0xffffffff7bd2b7b0 <+976>:   ldx  [ %l7 + %g1 ], %g1
>>>>> 0xffffffff7bd2b7b4 <+980>:   ldx  [ %g1 ], %g1
>>>>> 0xffffffff7bd2b7b8 <+984>:   call  0xffffffff7be9bc80 <t_reply at plt>
>>>>> *=> 0xffffffff7bd2b7bc <+988>:   ldx  [ %g1 + 0x38 ], %o3*
>>>>> 0xffffffff7bd2b7c0 <+992>:   cmp  %o0, 0
>>>>> 0xffffffff7bd2b7c4 <+996>:   be,pn   %icc, 0xffffffff7bd2bb14 <t_relay_to+1844>
>>>>> 0xffffffff7bd2b7c8 <+1000>:  ldx  [ %fp + 0x7f7 ], %o0
>>>>> 0xffffffff7bd2b7cc <+1004>:  b  %xcc, 0xffffffff7bd2b460 <t_relay_to+128>
>>>>>
>>>>> End of assembler dump.
>>>>> (gdb) info registers g1
>>>>> g1             0xffffffff7666c3e4       -2308520988
>>>>> (gdb) info registers o3
>>>>> o3             0x18f3d0 1635280
>>>>>
>>>>> I hope this helps in trying to resolve this problem and to find a solution. Also, if you need a sparc system to test with, just let me know. We can help from a sparc perspective.
>>>>>
>>>>> Thanks
>>>>>
>>>>> Nathaniel
>>>>>
>>>>>
>>>>
>>>> -- 
>>>> Daniel-Constantin Mierla -http://www.asipto.com
>>>> http://twitter.com/#!/miconda  -http://www.linkedin.com/in/miconda
>>>> Kamailio Advanced Training, Seattle, USA, Sep 23-26, 2012 -http://asipto.com/u/katu
>>>> Kamailio Practical Workshop, Netherlands, Sep 10-12, 2012 -http://asipto.com/u/kpw
>>>>
>>>> No virus found in this message.
>>>> Checked by AVG - www.avg.com <http://www.avg.com>
>>>> Version: 2012.0.2180 / Virus Database: 2437/5091 - Release Date: 06/24/12
>>>>
>>>
>>>
>>> _______________________________________________
>>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>>> sr-users at lists.sip-router.org
>>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>>>
>>
>> _______________________________________________
>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>> sr-users at lists.sip-router.org
>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>>
>
> _______________________________________________
> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
> sr-users at lists.sip-router.org
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users

-- 
Daniel-Constantin Mierla - http://www.asipto.com
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Kamailio Advanced Training, Seattle, USA, Sep 23-26, 2012 - http://asipto.com/u/katu
Kamailio Practical Workshop, Netherlands, Sep 10-12, 2012 - http://asipto.com/u/kpw




More information about the sr-users mailing list