Hello! Please help me to find the issue with CDP module as it blocks Kamailio to start.
[root@10-10-10-10 kamailio]# cat diameter.xml <?xml version="1.0" encoding="UTF-8"?> <DiameterPeer FQDN="10-10-10-10.ams.proxy.dev" Realm="proxy.dev" Product_Name="Diameter Credit Control" Vendor_Id="10415" AcceptUnknownPeers="1" DropUnknownOnDisconnect="1" Tc="30" Workers="4" QueueLength="32">
<Peer FQDN="dev-diameter-1.ams.proxy.dev" Realm="proxy.dev" port="3868"/> <Acceptor port="3868" bind="10.10.10.10"/> <Auth id="16777216" vendor="10415"/> <Acct id="16777216" vendor="0" /> <Auth id="16777216" vendor="10415"/> <Auth id="16777216" vendor="0" /> <SupportedVendor vendor="10415"/> <Realm name="proxy.dev"> <Route FQDN="dev-diameter-1.ams.proxy.dev" metric="1"/> </Realm> <DefaultRoute FQDN="dev-diameter-1.ams.proxy.dev" metric="10"/> </DiameterPeer>
38(7825) INFO: cdp [worker.c:332]: worker_process(): [1] Worker process started... 37(7824) INFO: cdp [worker.c:332]: worker_process(): [0] Worker process started... 39(7826) INFO: cdp [worker.c:332]: worker_process(): [2] Worker process started... 40(7827) INFO: cdp [worker.c:332]: worker_process(): [3] Worker process started... 41(7828) INFO: cdp [receiver.c:450]: receiver_process(): receiver_process(): [] Receiver process doing init on new process... 41(7828) INFO: cdp [receiver.c:455]: receiver_process(): receiver_process(): [] Receiver process starting up... 42(7829) INFO: cdp [receiver.c:450]: receiver_process(): receiver_process(): [dev-diameter-1.ams.proxy.dev] Receiver process doing init on new process... 42(7829) INFO: cdp [receiver.c:184]: add_serviced_peer(): add_serviced_peer(): Adding serviced_peer_t to receiver for peer [dev-diameter-1.ams.proxy.dev] 42(7829) INFO: cdp [receiver.c:455]: receiver_process(): receiver_process(): [dev-diameter-1.ams.proxy.dev] Receiver process starting up... 43(7830) INFO: cdp [acceptor.c:81]: acceptor_process(): Acceptor process starting up... 0(7787) INFO: cdp [cdp_mod.c:244]: cdp_child_init(): ... CDiameterPeer child started 43(7830) WARNING: cdp [tcp_accept.c:121]: create_socket(): create_socket(): Trying to open/bind/listen on 10.10.10.10 port 3868 43(7830) WARNING: cdp [tcp_accept.c:146]: create_socket(): create_socket(): Successful socket open/bind/listen on 10.10.10.10 port 3868 43(7830) INFO: cdp [acceptor.c:95]: acceptor_process(): Acceptor opened sockets. Entering accept loop ... 44(7831) INFO: cdp [timer.c:205]: timer_process(): Timer process starting up... [root@10-10-10-10 kamailio]# 44(7831) INFO: cdp [peerstatemachine.c:525]: I_Snd_Conn_Req(): I_Snd_Conn_Req(): Peer dev-diameter-1.ams.proxy.dev 44(7831) INFO: cdp [receiver.c:869]: peer_connect(): peer_connect(): Trying to connect to 10.10.10.20 port 3868 44(7831) INFO: cdp [receiver.c:937]: peer_connect(): peer_connect(): Peer dev-diameter-1.ams.proxy.dev:3868 connected 42(7829) ERROR: cdp [peerstatemachine.c:634]: I_Snd_CER(): I_Snd_CER(): Error on finding local host address > Socket operation on non-socket 42(7829) CRITICAL: <core> [core/mem/q_malloc.c:149]: qm_debug_check_frag(): BUG: qm: prev. fragm. tail overwritten(0, abcdefed)[0x7f3ecb7ef018:0x7f3ecb7ef050]! Memory allocator was called from cdp: diameter_avp.c:365. Fragment marked by cdp: diameter_avp.c:142. Exec from core/mem/q_malloc.c:504. 45(7832) CRITICAL: <core> [core/pass_fd.c:277]: receive_fd(): EOF on 52 0(7787) ALERT: <core> [main.c:739]: handle_sigs(): child process 7829 exited by a signal 6 0(7787) ALERT: <core> [main.c:742]: handle_sigs(): core was generated 0(7787) INFO: <core> [main.c:764]: handle_sigs(): terminating due to SIGCHLD
DNS record dev-diameter-1.ams.proxy.dev is pointed to 10.10.10.20
NU gdb (GDB) Red Hat Enterprise Linux 7.6.1-114.el7 Copyright (C) 2013 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-redhat-linux-gnu". For bug reporting instructions, please see: http://www.gnu.org/software/gdb/bugs/... Reading symbols from /usr/sbin/kamailio...Reading symbols from /usr/lib/debug/usr/sbin/kamailio.debug...done. done. [New LWP 7829] [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib64/libthread_db.so.1". Core was generated by `kamailio -f kamailio.cfg -DDDD -E'. Program terminated with signal 6, Aborted. #0 0x00007f3ed7dc0207 in raise () from /lib64/libc.so.6 Missing separate debuginfos, use: debuginfo-install glibc-2.17-260.el7.x86_64 keyutils-libs-1.5.8-3.el7.x86_64 krb5-libs-1.15.1-34.el7.x86_64 libcom_err-1.42.9-13.el7.x86_64 libgcc-4.8.5-36.el7.x86_64 libselinux-2.5-14.1.el7.x86_64 libstdc++-4.8.5-36.el7.x86_64 libxml2-2.9.1-6.el7_2.3.x86_64 mariadb-libs-5.5.60-1.el7_5.x86_64 openssl-libs-1.0.2k-16.el7.x86_64 pcre-8.32-17.el7.x86_64 xz-libs-5.2.2-1.el7.x86_64 zlib-1.2.7-18.el7.x86_64 (gdb) bt #0 0x00007f3ed7dc0207 in raise () from /lib64/libc.so.6 #1 0x00007f3ed7dc18f8 in abort () from /lib64/libc.so.6 #2 0x000000000067d5f7 in qm_debug_check_frag (qm=0x7f3ecb4d0000, f=0x7f3ecb7ef018, file=0x7f3ed068d932 "cdp: diameter_avp.c", line=365, efile=0x7df137 "core/mem/q_malloc.c", eline=504) at core/mem/q_malloc.c:151 #3 0x000000000068077a in qm_free (qmp=0x7f3ecb4d0000, p=0x7f3ecb7ef050, file=0x7f3ed068d932 "cdp: diameter_avp.c", func=0x7f3ed068f418 <__FUNCTION__.7016> "AAAFreeAVP", line=365, mname=0x7f3ed068d760 "cdp") at core/mem/q_malloc.c:504 #4 0x000000000068a2d6 in qm_shm_free (qmp=0x7f3ecb4d0000, p=0x7f3ecb7ef050, file=0x7f3ed068d932 "cdp: diameter_avp.c", func=0x7f3ed068f418 <__FUNCTION__.7016> "AAAFreeAVP", line=365, mname=0x7f3ed068d760 "cdp") at core/mem/q_malloc.c:1268 #5 0x00007f3ed06691c8 in AAAFreeAVP (avp=0x7ffd86bdd300) at diameter_avp.c:365 #6 0x00007f3ed0636d66 in AAAFreeAVPList (avpList=0x7f3ecb7eea40) at diameter_msg.c:396 #7 0x00007f3ed0637123 in AAAFreeMessage (msg=0x7ffd86bdd3b0) at diameter_msg.c:416 #8 0x00007f3ed06088ec in Process_CEA (p=0x7f3ecb7a00d8, cea=0x7f3ecb7ee9f0) at peerstatemachine.c:804 #9 0x00007f3ed0601ab1 in sm_process (p=0x7f3ecb7a00d8, event=I_Rcv_CEA, msg=0x7f3ecb7ee9f0, peer_locked=0, sock=8) at peerstatemachine.c:166 #10 0x00007f3ed0659825 in receive_message (msg=0x7f3ecb7ee9f0, sp=0x7f3ed76feec8) at receiver.c:1128 #11 0x00007f3ed064f295 in do_receive (sp=0x7f3ed76feec8) at receiver.c:593 #12 0x00007f3ed0653068 in receive_loop (original_peer=0x7f3ecb7a00d8) at receiver.c:800 #13 0x00007f3ed064c7c6 in receiver_process (p=0x7f3ecb7a00d8) at receiver.c:459 #14 0x00007f3ed05fd7de in diameter_peer_start (blocking=0) at diameter_peer.c:289 #15 0x00007f3ed05ef9b1 in cdp_child_init (rank=0) at cdp_mod.c:243 #16 0x0000000000544e31 in init_mod_child (m=0x7f3ed7630170, rank=0) at core/sr_module.c:943 #17 0x0000000000544ad3 in init_mod_child (m=0x7f3ed7630e90, rank=0) at core/sr_module.c:939 #18 0x0000000000544ad3 in init_mod_child (m=0x7f3ed7631290, rank=0) at core/sr_module.c:939 #19 0x0000000000544ad3 in init_mod_child (m=0x7f3ed7631700, rank=0) at core/sr_module.c:939 #20 0x0000000000545205 in init_child (rank=0) at core/sr_module.c:970 #21 0x0000000000424f85 in main_loop () at main.c:1701 #22 0x000000000042b87e in main (argc=5, argv=0x7ffd86bde218) at main.c:2638
(gdb) bt full #0 0x00007f3ed7dc0207 in raise () from /lib64/libc.so.6 No symbol table info available. #1 0x00007f3ed7dc18f8 in abort () from /lib64/libc.so.6 No symbol table info available. #2 0x000000000067d5f7 in qm_debug_check_frag (qm=0x7f3ecb4d0000, f=0x7f3ecb7ef018, file=0x7f3ed068d932 "cdp: diameter_avp.c", line=365, efile=0x7df137 "core/mem/q_malloc.c", eline=504) at core/mem/q_malloc.c:151 __FUNCTION__ = "qm_debug_check_frag" #3 0x000000000068077a in qm_free (qmp=0x7f3ecb4d0000, p=0x7f3ecb7ef050, file=0x7f3ed068d932 "cdp: diameter_avp.c", func=0x7f3ed068f418 <__FUNCTION__.7016> "AAAFreeAVP", line=365, mname=0x7f3ed068d760 "cdp") at core/mem/q_malloc.c:504 qm = 0x7f3ecb4d0000 f = 0x7f3ecb7ef018 size = 140726864040496 next = 0x7df14b prev = 0x7f3ed067f329 __FUNCTION__ = "qm_free" #4 0x000000000068a2d6 in qm_shm_free (qmp=0x7f3ecb4d0000, p=0x7f3ecb7ef050, file=0x7f3ed068d932 "cdp: diameter_avp.c", func=0x7f3ed068f418 <__FUNCTION__.7016> "AAAFreeAVP", line=365, mname=0x7f3ed068d760 "cdp") at core/mem/q_malloc.c:1268 No locals. #5 0x00007f3ed06691c8 in AAAFreeAVP (avp=0x7ffd86bdd300) at diameter_avp.c:365 __FUNCTION__ = "AAAFreeAVP" #6 0x00007f3ed0636d66 in AAAFreeAVPList (avpList=0x7f3ecb7eea40) at diameter_msg.c:396 avp_t = 0x7f3ecb7ef050 avp = 0x7f3ecb7eef40 #7 0x00007f3ed0637123 in AAAFreeMessage (msg=0x7ffd86bdd3b0) at diameter_msg.c:416 __FUNCTION__ = "AAAFreeMessage" #8 0x00007f3ed06088ec in Process_CEA (p=0x7f3ecb7a00d8, cea=0x7f3ecb7ee9f0) at peerstatemachine.c:804 avp = 0x7f3ecb7ef440 #9 0x00007f3ed0601ab1 in sm_process (p=0x7f3ecb7a00d8, event=I_Rcv_CEA, msg=0x7f3ecb7ee9f0, peer_locked=0, sock=8) at peerstatemachine.c:166 result_code = -798486160 next_event = 32574 msg_received = 0 __FUNCTION__ = "sm_process" #10 0x00007f3ed0659825 in receive_message (msg=0x7f3ecb7ee9f0, sp=0x7f3ed76feec8) at receiver.c:1128 avp1 = 0xd0684fc0 avp2 = 0x7f3ecb7eed10 __FUNCTION__ = "receive_message" #11 0x00007f3ed064f295 in do_receive (sp=0x7f3ed76feec8) at receiver.c:593 cnt = 184 n = 184 version = 1 dst = 0x7f3ecb7ef4f4 "" dmsg = 0x7f3ecb7ee9f0 __FUNCTION__ = "do_receive" #12 0x00007f3ed0653068 in receive_loop (original_peer=0x7f3ecb7a00d8) at receiver.c:800 rfds = {__fds_bits = {256, 0 <repeats 15 times>}} efds = {__fds_bits = {0 <repeats 16 times>}} tv = {tv_sec = 0, tv_usec = 999998} n = 1 max = 49 cnt = 1 msg = 0x0 sp = 0x7f3ed76feec8 sp2 = 0x7f3ed76feec8 p = 0x7f3ecb7a00d8 fd = 8 fd_exchange_pipe_local = 49 __FUNCTION__ = "receive_loop" #13 0x00007f3ed064c7c6 in receiver_process (p=0x7f3ecb7a00d8) at receiver.c:459 ---Type <return> to continue, or q <return> to quit--- __FUNCTION__ = "receiver_process" #14 0x00007f3ed05fd7de in diameter_peer_start (blocking=0) at diameter_peer.c:289 pid = 0 k = -1 p = 0x7f3ecb7a00d8 __FUNCTION__ = "diameter_peer_start" #15 0x00007f3ed05ef9b1 in cdp_child_init (rank=0) at cdp_mod.c:243 __FUNCTION__ = "cdp_child_init" #16 0x0000000000544e31 in init_mod_child (m=0x7f3ed7630170, rank=0) at core/sr_module.c:943 __FUNCTION__ = "init_mod_child" #17 0x0000000000544ad3 in init_mod_child (m=0x7f3ed7630e90, rank=0) at core/sr_module.c:939 __FUNCTION__ = "init_mod_child" #18 0x0000000000544ad3 in init_mod_child (m=0x7f3ed7631290, rank=0) at core/sr_module.c:939 __FUNCTION__ = "init_mod_child" #19 0x0000000000544ad3 in init_mod_child (m=0x7f3ed7631700, rank=0) at core/sr_module.c:939 __FUNCTION__ = "init_mod_child" #20 0x0000000000545205 in init_child (rank=0) at core/sr_module.c:970 No locals. #21 0x0000000000424f85 in main_loop () at main.c:1701 i = 32 pid = 7821 si = 0x0 si_desc = "udp receiver child=31 sock=10.10.10.10:5060\000\177\000\000`\336\275\206\375\177\000\000A\307g\000\000\000\000\000`\202A\000\000\000\000\000ȖP\313>\177", '\000' <repeats 14 times>, "\001\000\000\000\260\336\275\206\375\177\000\000\234\240h\000\000\000\000\000 \243w\000\000\000\000\000H\361m\327>\177\000" nrprocs = 32 woneinit = 1 __FUNCTION__ = "main_loop" #22 0x000000000042b87e in main (argc=5, argv=0x7ffd86bde218) at main.c:2638 cfg_stream = 0x2b13020 c = -1 r = 0 tmp = 0x0 tmp_len = 0 port = 0 proto = 0 options = 0x758490 ":f:cm:M:dVIhEeb:l:L:n:vKrRDTN:W:w:t:u:g:P:G:SQ:O:a:A:x:X:Y:" ret = -1 seed = 4201223303 rfd = 4 debug_save = 0 debug_flag = 0 dont_fork_cnt = 4 n_lst = 0x0 p = 0x0 st = {st_dev = 19, st_ino = 82198, st_nlink = 2, st_mode = 16832, st_uid = 995, st_gid = 2, __pad0 = 0, st_rdev = 0, st_size = 60, st_blksize = 4096, st_blocks = 0, st_atim = {tv_sec = 1547739314, tv_nsec = 582000000}, st_mtim = {tv_sec = 1547743303, tv_nsec = 194148453}, st_ctim = {tv_sec = 1547743303, tv_nsec = 194148453}, __unused = {0, 0, 0}} __FUNCTION__ = "main" (gdb)