[Home]

Summary:ASTERISK-23496: SIP Channel Stops Accepting Packets
Reporter:Ross Beer (rossbeer)Labels:
Date Opened:2014-03-18 05:04:49Date Closed:2014-04-14 08:56:08
Priority:MajorRegression?
Status:Closed/CompleteComponents:Channels/chan_sip/General PBX/pbx_realtime
Versions:1.8.26.1 Frequency of
Occurrence
Frequent
Related
Issues:
duplicatesASTERISK-21228 Deadlock in pbx_find_extension when attempting an autoservice stop due to holding the context lock
Environment:CentOS 6.5Attachments:( 0) backtrace.txt
( 1) backtrace-threads_2.txt
( 2) backtrace-threads.txt
( 3) core-show-locks.txt
Description:Asterisk segfaults randomly with a large number of SIP registrations. This issue was not present in 1.8.23.1 and has appeared in later versions.

The issue looks related to parsing of the digest in sip packets

Thread 30 (Thread 36177):
#0  0x00002b900ca36343 in ?? ()
#1  0x000000000053a0c0 in tdd_generate (tdd=0x7e53c0, buf=0x2b9030000938 "\260\271nl\223+",
   str=<value optimized out>) at tdd.c:355
#2  0x0000000000000003 in ?? ()
#3  0x0000000000545ddb in ast_parse_digest (digest=0x3 <Address 0x3 out of bounds>, d=0x2b902b1919c0,
   request=-888698275, pedantic=1063939106) at utils.c:2094
#4  0x3f6a6c22cb078a5d in ?? ()
#5  0x00007ffff042f740 in ?? ()
#6  0x00002b902b1919c0 in ?? ()
#7  0x0000000000000000 in ?? ()

Backtrace attached, though I think its not a full bt
Comments:By: Matt Jordan (mjordan) 2014-03-18 07:08:02.596-0500

I'm not sure this is going to be related to digest parsing, since the little bit that survived in the backtrace is in a tdd_generate. Regardless, we'll need the full unoptimized backtrace to figure out what is going on. Please compile Asterisk with DONT_OPTIMIZE and BETTER_BACKTRACES - that should produce a good backtrace.

By: Ross Beer (rossbeer) 2014-03-18 20:03:57.904-0500

This issues appears to be a threadlock, when this happens the SIP channel does not process any further sip packets,

Any packets being send time out.

By: Ross Beer (rossbeer) 2014-03-24 06:38:12.249-0500

The SIP channel stopped again and stopped accepting registration attempts

By: Matt Jordan (mjordan) 2014-03-25 10:02:16.835-0500

Is your dialplan using any switch statements, or using {{pbx_realtime}}?

By: Ross Beer (rossbeer) 2014-03-25 10:21:58.602-0500

Both switch statements and pbx_realtime are in use.

By: Rusty Newton (rnewton) 2014-04-14 08:56:08.141-0500

Closing out as I believe this is most likely a duplicate of ASTERISK-21228

Watch that issue for any further updates.