FYI. FreeSWITCH version 1.6.19 Debian 8.9 ________________________________ From: FreeSWITCH-users <freeswitch-users-bounces@lists.freeswitch.org> on behalf of Shaun Stokes <shaun.stokes@itec-support.co.uk> Sent: 13 December 2017 11:48 To: FreeSWITCH Users Help Subject: [Freeswitch-users] FreeSWITCH crash due to Signal 6 Abort while executing assert in nua_stack.c Hi, Recently experienced a crash (Signal 6 Abort) on FreeSWITCH, daemon log as follows. systemd[1]: freeswitch.service: main process exited, code=killed, status=6/ABRT fs_cli[5866]: [ERROR] fs_cli.c:1659 main() Error Connecting [Socket Connection Error] systemd[1]: freeswitch.service: control process exited, code=exited status=255 systemd[1]: Unit freeswitch.service entered failed state. systemd[1]: freeswitch.service holdoff time over, scheduling restart. systemd[1]: Stopping freeswitch... systemd[1]: Starting freeswitch... We don't have the FreeSWITCH logs for this particular incident, back-trace as follows. ================================================================================ # bt full ================================================================================ #0 0x00007f6b05f79067 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56 resultvar = 0 pid = 20383 selftid = 20402 #1 0x00007f6b05f7a448 in __GI_abort () at abort.c:89 save_stage = 2 act = {__sigaction_handler = {sa_handler = 0x7fff30339e75, sa_sigaction = 0x7fff30339e75}, sa_mask = {__val = {140097639576617, 140097517785411, 959, 4, 140097512340528, 0, 140096967610088, 4294967296, 0, 0, 0, 21474836480, 140097639576143, 140097512340680, 140097676636160, 140097639591704}}, sa_flags = -20442716, sa_restorer = 0x7f6afec8139a <__PRETTY_FUNCTION__.16073>} sigs = {__val = {32, 0 <repeats 15 times>}} #2 0x00007f6b05f72266 in __assert_fail_base (fmt=0x7f6b060aaf18 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x7f6afec811a4 "*nh->nh_prev == nh", file=file@entry=0x7f6afec81143 "nua_stack.c", line=line@entry=959, function=function@entry=0x7f6afec8139a <__PRETTY_FUNCTION__.16073> "nh_remove") at assert.c:92 str = 0x7f67e44770f0 "" total = 4096 #3 0x00007f6b05f72312 in __GI___assert_fail (assertion=assertion@entry=0x7f6afec811a4 "*nh->nh_prev == nh", file=file@entry=0x7f6afec81143 "nua_stack.c", line=line@entry=959, function=function@entry=0x7f6afec8139a <__PRETTY_FUNCTION__.16073> "nh_remove") at assert.c:101 No locals. #4 0x00007f6afebf3a36 in nh_remove (nua=0x7f6aec019e70, nh=0x7f6adfb244a0) at nua_stack.c:959 No locals. #5 nh_destroy (nua=0x7f6aec019e70, nh=0x7f6adfb244a0) at nua_stack.c:998 nh = 0x7f6adfb244a0 nua = 0x7f6aec019e70 #6 0x00007f6afebf4ba5 in nua_stack_destroy_handle (tags=<optimized out>, nh=<optimized out>, nua=<optimized out>) at nua_stack.c:660 No locals. #7 nua_stack_signal (nua=0x7f6aec019e70, msg=0x31, ee=0x7f6ac401fba8) at nua_stack.c:661 nh = 0x7f6adfb244a0 tags = 0x7f6ac401fbd0 event = nua_r_destroy error = 0 __func__ = "nua_stack_signal" #8 0x00007f6afec276d2 in su_base_port_execute_msgs (queue=0x7f67ea5624b0) at su_base_port.c:280 root = <optimized out> f = <optimized out> msg = 0x0 n = 12 #9 0x00007f6afec27bcd in su_base_port_run (self=0x7f6adc0008c0) at su_base_port.c:335 tout = 15000 tout2 = 0 __PRETTY_FUNCTION__ = "su_base_port_run" #10 0x00007f6afec2c900 in su_pthread_port_clone_main (varg=0x7f6afea2e750) at su_pthread_port.c:343 arg = 0x0 task = {{sut_port = 0x7f6adc0008c0, sut_root = 0x7f6adc001130}} zap = 1 #11 0x00007f6b062f7064 in start_thread (arg=0x7f6afe750700) at pthread_create.c:309 __res = <optimized out> pd = 0x7f6afe750700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140097512343296, 1338962068899872702, 0, 140097676709984, 27192672, 140097512343296, -1422840606975082562, -1422294471635779650}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #12 0x00007f6b0602c62d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 No locals. Essentially it failed on 'assert(*nh->nh_prev == nh);' while executing this function in 'nua_stack.c'. ############### /** @internal Remove a handle from list of handles */ static void nh_remove(nua_t *nua, nua_handle_t *nh) { assert(nh_is_inserted(nh)); assert(*nh->nh_prev == nh); if (nh->nh_next) nh->nh_next->nh_prev = nh->nh_prev; else nua->nua_handles_tail = nh->nh_prev; *nh->nh_prev = nh->nh_next; nh->nh_prev = NULL; nh->nh_next = NULL; } ############### It's difficult for us to understand the exact cause with-out a copy of the logs, if anyone has seem something similar or might be able to point us in the right direction we would be greatful. Thanks, S ______________________________________________________________________ This message has been checked for all known viruses by MessageLabs Virus Scanning Service. ______________________________________________________________________ ______________________________________________________________________ This message has been checked for all known viruses by MessageLabs Virus Scanning Service. ______________________________________________________________________ ______________________________________________________________________ This message has been checked for all known viruses by MessageLabs Virus Scanning Service. ______________________________________________________________________