<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"><html><head><meta name="qrichtext" content="1" /><style type="text/css">p, li { white-space: pre-wrap; }</style></head><body style=" font-family:'Lucida Console'; font-size:9pt; font-weight:400; font-style:normal;">Hi all,<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>i get now a segfault in cfg_update[_local] for kamailio modules during my tests. It doesn't matter if the server start successfully, it even crashs when the server stops the start during some cfg file problems.<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>I remember that Miklos changes in the last week something in the cfg framework, perhaps its related to this? The cfg in question does nothing special, it just try to loads a bunch of kamailio modules, but as i said, it crashes for every configuration i've tried so far.<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>Backtrace:<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>Core was generated by `../../ser -w . -f 2.cfg'.<br>
Program terminated with signal 11, Segmentation fault.<br>
[New process 16270]<br>
#0  cfg_update_local () at cfg/cfg_struct.h:255<br>
255                     cfg_child_cb = cfg_child_cb-&gt;next;<br>
(gdb) bt<br>
#0  cfg_update_local () at cfg/cfg_struct.h:255<br>
#1  0x0809c050 in sig_usr (signo=15) at main.c:782<br>
#2  &lt;signal handler called&gt;<br>
#3  0xb7fd742e in __kernel_vsyscall ()<br>
#4  0xb7f11e03 in __read_nocancel () from /lib/tls/i686/cmov/libc.so.6<br>
#5  0xb7ea8f4e in _IO_new_file_underflow (fp=0x98e98e0) at fileops.c:598<br>
#6  0xb7eaacab in _IO_default_uflow (fp=0x98e98e0) at genops.c:440<br>
#7  0xb7eac262 in *__GI___uflow (fp=0x98e98e0) at genops.c:394<br>
#8  0xb7e9ea36 in _IO_getline_info (fp=0x98e98e0, buf=0x82b40b4 "�\003", n=1023, delim=10, extract_delim=1, eof=0x0) at iogetline.c:74<br>
#9  0xb7e9e981 in _IO_getline (fp=0x98e98e0, buf=0x82b40b4 "�\003", n=1023, delim=10, extract_delim=1) at iogetline.c:42<br>
#10 0xb7e9d86a in _IO_fgets (buf=0x82b40b4 "�\003", n=1024, fp=0x98e98e0) at iofgets.c:58<br>
#11 0xb7c4769f in mi_read_line (b=0x82b40b4 "�\003", max=1024, stream=0x98e98e0, read=0xbfef22f8) at /usr/include/bits/stdio2.h:255<br>
#12 0xb7c48957 in mi_fifo_server (fifo_stream=0x98e98e0) at fifo_fnc.c:415<br>
#13 0xb7c4ad48 in fifo_process (rank=1) at mi_fifo.c:235<br>
#14 0xb7c4afbd in mi_child_init (rank=0) at mi_fifo.c:199<br>
#15 0x081099e7 in init_mod_child (m=0x82ac28c, rank=0) at sr_module.c:808<br>
#16 0x08109970 in init_mod_child (m=0x82ac3dc, rank=0) at sr_module.c:785<br>
#17 0x08109970 in init_mod_child (m=0x82ac528, rank=0) at sr_module.c:785<br>
#18 0x08109970 in init_mod_child (m=0x82ac680, rank=0) at sr_module.c:785<br>
#19 0x08109970 in init_mod_child (m=0x82ac7c8, rank=0) at sr_module.c:785<br>
#20 0x08109970 in init_mod_child (m=0x82ac910, rank=0) at sr_module.c:785<br>
#21 0x08109970 in init_mod_child (m=0x82aca68, rank=0) at sr_module.c:785<br>
#22 0x08109970 in init_mod_child (m=0x82acbac, rank=0) at sr_module.c:785<br>
#23 0x08109970 in init_mod_child (m=0x82acd00, rank=0) at sr_module.c:785<br>
#24 0x08109970 in init_mod_child (m=0x82ace44, rank=0) at sr_module.c:785<br>
#25 0x08109970 in init_mod_child (m=0x82acf88, rank=0) at sr_module.c:785<br>
#26 0x08109970 in init_mod_child (m=0x82ad0e0, rank=0) at sr_module.c:785<br>
#27 0x08109970 in init_mod_child (m=0x82ad2dc, rank=0) at sr_module.c:785<br>
#28 0x08109970 in init_mod_child (m=0x82ad3d0, rank=0) at sr_module.c:785<br>
#29 0x08109970 in init_mod_child (m=0x82ad570, rank=0) at sr_module.c:785<br>
#30 0x08109970 in init_mod_child (m=0x82ad6c0, rank=0) at sr_module.c:785<br>
#31 0x08109970 in init_mod_child (m=0x82ad810, rank=0) at sr_module.c:785<br>
#32 0x08109970 in init_mod_child (m=0x82ad974, rank=0) at sr_module.c:785<br>
#33 0x08109970 in init_mod_child (m=0x82adb28, rank=0) at sr_module.c:785<br>
#34 0x08109970 in init_mod_child (m=0x82adc84, rank=0) at sr_module.c:785<br>
#35 0x08109970 in init_mod_child (m=0x82adf6c, rank=0) at sr_module.c:785<br>
#36 0x08109970 in init_mod_child (m=0x82b0564, rank=0) at sr_module.c:785<br>
#37 0x08109970 in init_mod_child (m=0x82b0658, rank=0) at sr_module.c:785<br>
#38 0x08109970 in init_mod_child (m=0x82b07fc, rank=0) at sr_module.c:785<br>
#39 0x08109970 in init_mod_child (m=0x82b2398, rank=0) at sr_module.c:785<br>
#40 0x0809b6bd in main_loop () at main.c:1504<br>
#41 0x0809e10d in main (argc=5, argv=0xbfef2bf4) at main.c:2228<br>
(gdb) p cfg_child_cb<br>
$1 = (cfg_child_cb_t *) 0x0<br>
(gdb) l<br>
250             if (unlikely(cfg_child_cb==CFG_NO_CHILD_CBS))<br>
251                     return;<br>
252             /* call the per-process callbacks */<br>
253             while (cfg_child_cb != last_cb) {<br>
254                     prev_cb = cfg_child_cb;<br>
255                     cfg_child_cb = cfg_child_cb-&gt;next;<br>
256                     atomic_inc(&amp;cfg_child_cb-&gt;refcnt);<br>
257                     if (atomic_dec_and_test(&amp;prev_cb-&gt;refcnt)) {<br>
258                             /* No more pocess refers to this callback.<br>
259                             Did this process block the deletion,<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p><p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>Regards,<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>Henning</p></body></html>