Looking for some help with coredumps

Hi all,

one of my asterisk systems keeps crashing after 3 to 5 hours after/while reconnecting the Snom phones (pjsip). But not on every reconnect. Here’s a Coredump, I’d be thankful for some input.

Asterisk version 13.12.2

#0 0x000000356fe324f5 in raise () from /lib64/libc.so.6
#1 0x000000356fe33cd5 in abort () from /lib64/libc.so.6
#2 0x000000356fe2b66e in __assert_fail_base () from /lib64/libc.so.6
#3 0x000000356fe2b730 in __assert_fail () from /lib64/libc.so.6
#4 0x00007f5f12432716 in pj_ioqueue_register_sock2 () from /usr/lib64/libpj.so.2
#5 0x00007f5f12438337 in pj_activesock_create () from /usr/lib64/libpj.so.2
#6 0x00007f5f124496bf in pj_ssl_sock_start_connect () from /usr/lib64/libpj.so.2
#7 0x00007f5f13dd426e in lis_create_transport () from /usr/lib64/libpjsip.so.2
#8 0x00007f5f13dcb53b in pjsip_tpmgr_acquire_transport2 () from /usr/lib64/libpjsip.so.2
#9 0x00007f5f13dc13b4 in pjsip_endpt_acquire_transport2 () from /usr/lib64/libpjsip.so.2
#10 0x00007f5f13dc3ff8 in stateless_send_transport_cb () from /usr/lib64/libpjsip.so.2
#11 0x00007f5f13dc463c in stateless_send_resolver_callback () from /usr/lib64/libpjsip.so.2
#12 0x00007f5f13dc687b in pjsip_resolve () from /usr/lib64/libpjsip.so.2
#13 0x00007f5f13dc12e8 in pjsip_endpt_resolve () from /usr/lib64/libpjsip.so.2
#14 0x00007f5f13dc4767 in pjsip_endpt_send_request_stateless () from /usr/lib64/libpjsip.so.2
#15 0x00007f5f13ddebe7 in tsx_send_msg () from /usr/lib64/libpjsip.so.2
#16 0x00007f5f13ddf3b1 in tsx_on_state_null () from /usr/lib64/libpjsip.so.2
#17 0x00007f5f13ddddd8 in pjsip_tsx_send_msg () from /usr/lib64/libpjsip.so.2
#18 0x00007f5f13de3e7f in pjsip_dlg_send_request () from /usr/lib64/libpjsip.so.2
#19 0x00007f5f3004a8dd in pjsip_evsub_send_request () from /usr/lib64/libpjsip-simple.so.2
#20 0x00007f5f03e8da03 in internal_pjsip_evsub_send_request (sub_tree=0x7f5f0c17cd58, tdata=0x7f5f0c1eb658) at res_pjsip_pubsub.c:1684
#21 0x00007f5f03e8de01 in sip_subscription_send_request (sub_tree=0x7f5f0c17cd58, tdata=0x7f5f0c1eb658) at res_pjsip_pubsub.c:1830
#22 0x00007f5f03e8ec99 in send_notify (sub_tree=0x7f5f0c17cd58, force_full_state=0) at res_pjsip_pubsub.c:2279
#23 0x00007f5f03e8ef90 in ast_sip_subscription_notify (sub=0x7f5f0c095250, notify_data=0x7f5f335d4b60, terminate=0) at res_pjsip_pubsub.c:2389
#24 0x00007f5ee3fc8da5 in notify_task (obj=0x7f5f18005118) at res_pjsip_exten_state.c:259
#25 0x00000000005ed15a in ast_taskprocessor_execute (tps=0x1609c68) at taskprocessor.c:967
#26 0x00000000005f625a in execute_tasks (data=0x1609c68) at threadpool.c:1322
#27 0x00000000005ed15a in ast_taskprocessor_execute (tps=0x15b1f38) at taskprocessor.c:967
#28 0x00000000005f4565 in threadpool_execute (pool=0x15b1d88) at threadpool.c:351
#29 0x00000000005f5b78 in worker_active (worker=0x7f5f14002c68) at threadpool.c:1105
#30 0x00000000005f5924 in worker_start (arg=0x7f5f14002c68) at threadpool.c:1024
#31 0x0000000000601b7e in dummy_start (data=0x7f5f14002d80) at utils.c:1235
#32 0x0000003570207aa1 in start_thread () from /lib64/libpthread.so.0
#33 0x000000356fee8c4d in clone () from /lib64/libc.so.6

You are going to need to load the debug symbols for PJSIP and LIBC to get very far with this. It is happening deep into PJSIP, rather than in Asterisk. There should be a message saying why the assertion failed, but you will need the debug symbols for one or both of the above, even to find the message (or you could probably start the daemon with standard error assigned to a file, or run asterisk in the no-detach debugging mode.

It’s an assertion in PJSIP itself, most likely because your PJSIP has not been built with the best options and configuration for Asterisk. The default is for that of a normal phone and in developer mode (so even non-fatal assertions are triggered).

Thanks guys, you pointed me in the right direction. Here are steps that fixed it:

I enabled verbose and debug logging

core set verbose 5
core set debug 5
pjsip set logger on
module reload logger

And found that the crash happens after some tls errors and timeouts which made me check the certificates in /etc/asterisk/pjsip.transports.conf. The Cert used there was outdated, I changed it to Lets Encrypt and now it seems to be working fine! What a dumb error :smiley:

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.