[OpenSER-Users] SIGILL when starting openser
Bogdan-Andrei Iancu
bogdan at voice-system.ro
Fri Apr 25 19:18:02 CEST 2008
Hi Christian,
The line the trace refer at is:
sec_rand[i] = 32 + (int)(95.0 * rand() / (RAND_MAX + 1.0));
I suspect the rand() function, as there were some previous reports about
it....:(
Could you try alter the code and replace the rand() with some number
just to see if it won't crash?
Regards,
Bogdan
Christian Koch wrote:
> Hi Bogdan,
>
> when logging to syslog these are the last lines I get:
>
> Apr 23 16:12:02 192 /usr/local/sbin/openser[12817]:
> DBG:core:init_mod: registering stats for usrloc
> Apr 23 16:12:02 192 /usr/local/sbin/openser[12817]:
> DBG:core:init_mod: register MI for usrloc
> Apr 23 16:12:02 192 /usr/local/sbin/openser[12817]:
> DBG:core:init_mod: initializing module registrar
> Apr 23 16:12:02 192 /usr/local/sbin/openser[12817]:
> INFO:registrar:mod_init: initializing...
> Apr 23 16:12:02 192 /usr/local/sbin/openser[12817]:
> DBG:core:find_cmd_export_t: found <load_sl>(0) in module sl
> [/usr/local/lib/openser/modules/]
> Apr 23 16:12:02 192 /usr/local/sbin/openser[12817]:
> DBG:core:find_cmd_export_t: found <ul_bind_usrloc>(1) in module
> usrloc [/usr/local/lib/openser/modules/]
> Apr 23 16:12:02 192 /usr/local/sbin/openser[12817]:
> DBG:core:init_mod: registering stats for registrar
> Apr 23 16:12:02 192 /usr/local/sbin/openser[12817]:
> DBG:core:init_mod: initializing module auth
> Apr 23 16:12:02 192 /usr/local/sbin/openser[12817]:
> INFO:auth:mod_init: initializing...
> Apr 23 16:12:02 192 /usr/local/sbin/openser[12817]:
> DBG:core:find_cmd_export_t: found <load_sl>(0) in module sl
> [/usr/local/lib/openser/modules/]
>
> All other messages I get are either DBG or INFO, no errors. But now I
> tried something different. I've set "fork=no", and now I'm getting a
> corefile. Backtrace of gdb is:
>
> (gdb) bt
> #0 0x0012ff8f in mod_init () at auth_mod.c:200
> #1 0x080ab61e in init_mod (m=0x8165048) at sr_module.c:461
> #2 0x080ab3f5 in init_mod (m=0x81650e8) at sr_module.c:456
> #3 0x080ab3f5 in init_mod (m=0x8165188) at sr_module.c:456
> #4 0x080ab3f5 in init_mod (m=0x8165228) at sr_module.c:456
> #5 0x080ab3f5 in init_mod (m=0x81652c8) at sr_module.c:456
> #6 0x080ab3f5 in init_mod (m=0x8165368) at sr_module.c:456
> #7 0x080ab3f5 in init_mod (m=0x8165408) at sr_module.c:456
> #8 0x080ab3f5 in init_mod (m=0x81654a8) at sr_module.c:456
> #9 0x080ab3f5 in init_mod (m=0x8165548) at sr_module.c:456
> #10 0x080ab3f5 in init_mod (m=0x8165618) at sr_module.c:456
> #11 0x080ab3f5 in init_mod (m=0x81656b8) at sr_module.c:456
> #12 0x080684a7 in main (argc=1, argv=0xbff668b4) at main.c:1355
> (gdb)
>
> Looks like calling init_mod() recursively. I didn't study the openser
> code, but this backtrace looks strange to me.
> If anybody is interested in the whole corefile, please mail me directly.
> I don't want to post such a large file to the list.
>
> Thanks a lot for your help,
> Christian
>
>
>
>
> Bogdan-Andrei Iancu schrieb:
>
>> Hi Christian,
>>
>> Any logs from openser during startup? if not, try to enable debug
>> (debug=6) and see where is stops.
>>
>> Regards,
>> Bogdan
>>
>> Christian Koch wrote:
>>
>>> Hi,
>>>
>>> when starting openser 1.3.1 it doesn't really start, but stops after
>>> processing a SIGILL. When perfoming
>>>
>>> strace -f /usr/local/sbin/openser
>>>
>>> I get the following output (these are only the last few lines):
>>>
>>> time([1208951399]) = 1208951399
>>> stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=837,
>>> ...}) = 0
>>> stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=837,
>>> ...}) = 0
>>> stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=837,
>>> ...}) = 0
>>> send(3, "<143>Apr 23 13:49:59 /usr/local/"..., 147, MSG_NOSIGNAL)
>>> = 147
>>> --- SIGILL (Illegal instruction) @ 0 (0) ---
>>> Process 12746 detached
>>>
>>>
>>> I've compiled openser from source on the same machine. When starting
>>> openser with -V everything works just fine. Output:
>>>
>>> version: openser 1.3.1-notls (i386/linux)
>>> flags: STATS: Off, USE_IPV6, USE_TCP, DISABLE_NAGLE, USE_MCAST,
>>> SHM_MEM, SHM_MMAP, PKG_MALLOC, F_MALLOC, FAST_LOCK-ADAPTIVE_WAIT
>>> ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN
>>> 16, MAX_URI_SIZE 1024, BUF_SIZE 65535
>>> poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
>>> svnrevision: unknown
>>> @(#) $Id: main.c 3590 2008-01-28 17:46:56Z bogdan_iancu $
>>> main.c compiled on 10:47:24 Apr 23 2008 with gcc 3.4.5
>>>
>>>
>>>
>>> So I guessed the problem could occur inside a module. I removed
>>> auth.so and auth_db.so from my config file, but openser still doesn't
>>> start. But, it doesn't receive a SIGILL anymore, but SIGTERM. Output
>>> from strace:
>>>
>>> time([1208951661]) = 1208951661
>>> stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=837,
>>> ...}) = 0
>>> stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=837,
>>> ...}) = 0
>>> stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=837,
>>> ...}) = 0
>>> send(3, "<139>Apr 23 13:54:21 /usr/local/"..., 103, MSG_NOSIGNAL)
>>> = 103
>>> kill(0, SIGTERM) = 0
>>> --- SIGTERM (Terminated) @ 0 (0) ---
>>> sigreturn() = ? (mask now [])
>>> time([1208951661]) = 1208951661
>>> stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=837,
>>> ...}) = 0
>>>
>>> [...]
>>>
>>> stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=837,
>>> ...}) = 0
>>> stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=837,
>>> ...}) = 0
>>> stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=837,
>>> ...}) = 0
>>> send(3, "<143>Apr 23 13:54:21 /usr/local/"..., 113, MSG_NOSIGNAL)
>>> = 113
>>> munmap(0xb5f58000, 33554432) = 0
>>> exit_group(-1) = ?
>>> Process 12752 detached
>>>
>>> Any ideas how to fix this problem?
>>>
>>> Thx,
>>> Christian
>>>
>>>
>>> _______________________________________________
>>> Users mailing list
>>> Users at lists.openser.org
>>> http://lists.openser.org/cgi-bin/mailman/listinfo/users
>>>
>>>
>>>
>
>
> _______________________________________________
> Users mailing list
> Users at lists.openser.org
> http://lists.openser.org/cgi-bin/mailman/listinfo/users
>
>
More information about the Users
mailing list