[SR-Users] EOF Error in pass_fd

Daniel-Constantin Mierla miconda at gmail.com
Mon Jun 25 18:42:55 CEST 2012


Hello,

there was a wrong unlocking of the profile while printing its content 
via MI, that could caused a race and eventually this kind of crash (in 
the case a dlg was added/removed in/from profile while the mi command 
was run).

I committed a patch, you have to use latest branch 3.2. Let us know if 
all goes fine now.

Cheers,
Daniel

On 6/25/12 4:45 PM, Ricardo Martinez wrote:
>
> Hello List.
>
> The last weekend our kamailio process crashed with this error :
>
> Jun 24 06:55:08 pxh /usr/local/sbin/kamailio[10661]: : <core> 
> [pass_fd.c:293]: ERROR: receive_fd: EOF on 29
>
> Jun 24 06:55:08 pxh /usr/local/sbin/kamailio[10542]: ALERT: <core> 
> [main.c:751]: child process 10601 exited by a signal 11
>
> Jun 24 06:55:08 pxh /usr/local/sbin/kamailio[10542]: ALERT: <core> 
> [main.c:754]: core was generated
>
> Jun 24 06:55:08 pxh /usr/local/sbin/kamailio[10542]: INFO: <core> 
> [main.c:766]: INFO: terminating due to SIGCHLD
>
> Can someone tell me what seems to be the problem here?
>
> We're using  :
>
> version: kamailio 3.2.2 (x86_64/linux) 98ba92-dirty
>
> flags: STATS: Off, USE_IPV6, USE_TCP, USE_TLS, TLS_HOOKS, 
> USE_RAW_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, 
> SHM_MMAP, PKG_MALLOC, DBG_QM_MALLOC, USE_FUTEX, 
> FAST_LOCK-ADAPTIVE_WAIT, USE_DNS_CACHE, USE_DNS_FAILOVER, USE_NAPTR, 
> USE_DST_BLACKLIST, HAVE_RESOLV_RES
>
> ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN 16, 
> MAX_URI_SIZE 1024, BUF_SIZE 65535, DEFAULT PKG_SIZE 4MB
>
> poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
>
> id: 98ba92 -dirty
>
> compiled on 12:45:36 Feb  2 2012 with gcc 4.4.6
>
> And this is the bt full from gdb
>
> Core was generated by `/usr/local/sbin/kamailio -m 1024'.
>
> Program terminated with signal 11, Segmentation fault.
>
> #0  mi_profile_list (cmd_tree=<value optimized out>, param=<value 
> optimized out>) at dlg_profile.c:789
>
> 789 if ( mi_print_dlg( rpl, ph->dlg, 0)!=0 )
>
> Missing separate debuginfos, use: debuginfo-install 
> filesystem-2.4.30-2.1.el6.x86_64 glibc-2.12-1.25.el6_1.3.x86_64 
> keyutils-libs-1.4-1.el6.x86_64 krb5-libs-1.9-9.el6_1.2.x86_64 
> libcom_err-1.41.12-7.el6.x86_64 libselinux-2.0.94-5.el6.x86_64 
> mysql-libs-5.1.52-1.el6_0.1.x86_64 
> nss-softokn-freebl-3.12.7-1.1.el6.x86_64 
> openssl-1.0.0-20.el6_2.1.x86_64 pcre-7.8-3.1.el6.x86_64 
> zlib-1.2.3-26.el6.x86_64
>
> (gdb) bt full
>
> #0  mi_profile_list (cmd_tree=<value optimized out>, param=<value 
> optimized out>) at dlg_profile.c:789
>
>         node = <value optimized out>
>
>         rpl_tree = 0x20a6790
>
>         rpl = 0x20a67b0
>
>         profile = 0x7fe99a2dda00
>
>         ph = 0x0
>
>         profile_name = <value optimized out>
>
>         value = <value optimized out>
>
>         i = <value optimized out>
>
> #1  0x00007fe9dce287b1 in run_mi_cmd (fifo_stream=<value optimized 
> out>) at ../../lib/kmi/mi.h:77
>
> No locals.
>
> #2  mi_fifo_server (fifo_stream=<value optimized out>) at fifo_fnc.c:509
>
>         mi_cmd = 0x208f8f0
>
>         mi_rpl = <value optimized out>
>
>         hdl = 0x0
>
>         line_len = 41
>
>         file_sep = 0x2039017 ""
>
>         command = 0x7fe9dfdbdef9 "profile_list_dlgs"
>
>         file = 0x7fe9dfd98d78 "/tmp/openser_receiver_27809"
>
>         f = 0x2039018
>
>         reply_stream = 0x20b0980
>
> #3  0x00007fe9dce2a640 in fifo_process (rank=<value optimized out>) at 
> mi_fifo.c:247
>
>         fifo_stream = 0x209a0b0
>
> #4  0x00007fe9dce2a9de in mi_child_init (rank=0) at mi_fifo.c:211
>
>         pid = <value optimized out>
>
> #5  0x00000000004dba41 in init_mod_child (m=0x7fe9dfc6ba10, rank=0) at 
> sr_module.c:886
>
> No locals.
>
> #6  0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6bd08, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> #7  0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6c248, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> #8  0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6c748, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> #9  0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6d288, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> #10 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6d928, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> #11 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6dee0, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> #12 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6e1f0, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> #13 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6e5d0, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> #14 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6e830, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> #15 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6ebd0, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> #16 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6f220, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> #17 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6f648, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> #18 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6fa60, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> #19 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6fe40, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> #20 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc702c0, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> #21 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc70ae8, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> ---Type <return> to continue, or q <return> to quit---
>
> #22 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc70e18, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> #23 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc71100, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> #24 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc716c0, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> #25 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc71df0, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> #26 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc723c0, rank=0) at 
> sr_module.c:883
>
> No locals.
>
> #27 0x000000000046077d in main_loop () at main.c:1661
>
>         i = <value optimized out>
>
>         pid = <value optimized out>
>
>         si = 0x0
>
>         si_desc = "udp receiver child=15 sock=64.76.154.35:5060 
> <http://64.76.154.35:5060>", '\000' <repeats 20 times>, "\003", '\000' 
> <repeats 15 times>, 
> "\030\325\a\232\351\177\000\000\001\000\000\000\002", '\000' <repeats 
> 11 times>, 
> "\001\000\000\000\000\000\000\000\003\000\000\000\000\000\000\000)\000\000\000\000\000\000"
>
> #28 0x0000000000461f13 in main (argc=<value optimized out>, 
> argv=0x7fff2f2b2848) at main.c:2475
>
>         cfg_stream = <value optimized out>
>
>         c = <value optimized out>
>
>         r = <value optimized out>
>
>         tmp = 0x7fff2f2b3f76 ""
>
>         tmp_len = 0
>
>         options = 0x5a3178 
> ":f:cm:M:dVhEb:l:L:n:vrRDTN:W:w:t:u:g:P:G:SQ:O:a:A:"
>
>         ret = -1
>
>         seed = 1850310455
>
>         rfd = <value optimized out>
>
>         debug_save = <value optimized out>
>
>         debug_flag = <value optimized out>
>
>         dont_fork_cnt = <value optimized out>
>
>         n_lst = <value optimized out>
>
>         p = <value optimized out>
>
> (gdb)
>
> Regards,
>
> Ricardo.-
>
>
>
> _______________________________________________
> 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

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20120625/f3adb5fc/attachment-0001.htm>


More information about the sr-users mailing list