[Home]

Summary:ASTERISK-13110: Asterisk crashes when transfering call multiple times.
Reporter:Chris Maciejewski (chris-mac)Labels:
Date Opened:2008-11-23 15:58:42.000-0600Date Closed:2008-12-08 11:23:39.000-0600
Priority:CriticalRegression?No
Status:Closed/CompleteComponents:Channels/chan_sip/Transfers
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) bug13956-1.diff
( 1) crash1.txt
( 2) crash2.txt
( 3) crash3.txt
( 4) debug.log
( 5) transfer1.txt
( 6) transfer2.txt
( 7) transfer3.txt
Description:My scenarios is as follows:
1. A makes calls B.
2. A transfers B to C.
3. C transfers B to A.
4. A transfers B to C.
5. C transfers B to D.
6. asterisk crashes :-(

Number of transfers before asterisk crashes vary. But in general is always more than 4-5. Managed to capture two console outputs and respective core dumps.

transfer1.txt:
Packet2Packet bridging SIP/Voicetrading-Std-08234bb0 and SIP/78.105.1.128:5060-084dff20
[Nov 23 21:28:33] WARNING[12008]: rtp.c:4251 ast_rtp_bridge: Got hangup while attempting to bridge 'SIP/dev-sip.tele500.com-084cf6c0<ZOMBIE>' and 'SIP/78.105.1.128:5060-08235450'
   -- Native bridging SIP/dev-sip.tele500.com-084cf6c0<ZOMBIE> and SIP/78.105.1.128:5060-08235450 ended
Segmentation fault (core dumped)

transfer2.txt:
chan_sip.c:19423 handle_request_do: We could NOT get the channel lock for SIP/78.105.1.128:5060-084cf788!
chan_sip.c:19424 handle_request_do: SIP transaction failed: 60920c9d029a6434482566b46c8ce5ae@78.105.1.129
chan_sip.c:19423 handle_request_do: We could NOT get the channel lock for SIP/78.105.1.128:5060-084cf788!
chan_sip.c:19424 handle_request_do: SIP transaction failed: 60920c9d029a6434482566b46c8ce5ae@78.105.1.129
chan_sip.c:19423 handle_request_do: We could NOT get the channel lock for SIP/78.105.1.128:5060-084cd820!
chan_sip.c:19424 handle_request_do: SIP transaction failed: 585383936f1a5d260cc52e1b0895ac3a@78.105.1.129
chan_sip.c:19423 handle_request_do: We could NOT get the channel lock for SIP/78.105.1.128:5060-084cd820!
chan_sip.c:19424 handle_request_do: SIP transaction failed: 585383936f1a5d260cc52e1b0895ac3a@78.105.1.129
Segmentation fault (core dumped)

Regards,
Chris
Comments:By: Leif Madsen (lmadsen) 2008-11-24 09:21:49.000-0600

Assigned to mnicholson for now as it appears there *may* be enough information here with the backtraces.

However...

chris-mac:  can you please provide debugging output per the bug guidelines? This may be useful information:

"6. SIP Problem?
Include debug output! Please include output from "sip debug" if you have a SIP problem. This seems obvious, but apparently is not. Set debug to 4, verbose to 4, turn on sip history and dumphistory in sip.conf and capture all output. A packet trace from ethereal will not tell us what is happening inside your Asterisk server, so that is not a replacement."


In addition, can you enable DEBUG_THREADS in menuselect (under the Compiler Flags) and reinstall Asterisk, then show us the output of 'core show locks' after each transfer?

Thanks!

By: Chris Maciejewski (chris-mac) 2008-11-24 14:40:24.000-0600

debug output (debug.log) along with another bt trace (transfer3.txt) attached.

PS. I just checked and the same problem exists in 1.6.0 branch. Shall I file another bug report?

By: Matthew Nicholson (mnicholson) 2008-11-24 14:50:04.000-0600

No need to file a new bug report.

By: Matthew Nicholson (mnicholson) 2008-11-25 16:02:51.000-0600

Please test the patch (bug13956-1.diff) that I just uploaded.  It should fix your crash, but I think the crash is caused by a deeper issue.  Let me know what you find.



By: Chris Maciejewski (chris-mac) 2008-11-26 03:19:36.000-0600

Unfortunately  bug13956-1.diff did not fix my problem. Asterisk still crashes. Please see crash1.txt, crash2.txt and crash3.txt attached.



By: Chris Maciejewski (chris-mac) 2008-11-29 05:56:52.000-0600

Not sure if this is relevant, but noticed my Asterisk is always showing the same output for "core show locks":

=======================================================================
=== Currently Held Locks ==============================================
=======================================================================
===
=== <pending> <lock#> (<file>): <lock type> <line num> <function> <lock name> <lock addr> (times locked)
===
=======================================================================

No matter how many calls/transfers I do, there are no locks displayed.

By: Matthew Nicholson (mnicholson) 2008-12-01 16:57:53.000-0600

Please double check and make sure you have my patch applied, it looks like your crash is occurring in exactly the same place.

By: Chris Maciejewski (chris-mac) 2008-12-03 07:25:23.000-0600

I am really sorry, but looks like I was testing on Asterisk without your patch applied.

With bug13956-1.diff applied, Asterisk no longer crashes.

Regards,

Chris

By: Matthew Nicholson (mnicholson) 2008-12-03 10:15:56.000-0600

With the patch applied, are you seeing any other problems?  Any strange console output or strange behavior?

By: Chris Maciejewski (chris-mac) 2008-12-07 14:12:43.000-0600

I haven't noticed other problems or strange console output.

I can still see:
[Dec  7 19:44:03] ERROR[5555]: chan_sip.c:19423 handle_request_do: We could NOT get the channel lock for SIP/Trunk-Std-092efc98!
[Dec  7 19:44:03] ERROR[5555]: chan_sip.c:19424 handle_request_do: SIP transaction failed: 5c0b411d6b6613730d428ce5054fcc02@78.105.1.129

from time to time, but not when transferring calls, so this is probably not related to bug13956-1.diff patch.

By: pj (pj) 2008-12-07 15:54:19.000-0600

for "could NOT get the channel lock" is separate bugreport ASTERISK-1303115
it still appearing, eg. I'm running Asterisk SVN-trunk-r159853

By: Matthew Nicholson (mnicholson) 2008-12-08 09:01:42.000-0600

Ok.  I'll go ahead and commit this fix.

By: Digium Subversion (svnbot) 2008-12-08 11:23:36.000-0600

Repository: asterisk
Revision: 161721

U   trunk/channels/chan_sip.c

------------------------------------------------------------------------
r161721 | mnicholson | 2008-12-08 11:23:36 -0600 (Mon, 08 Dec 2008) | 7 lines

Fix a crash that can occur on a transfer in chan_sip when attempting to collect
rtp stats.

(closes issue ASTERISK-13110)
Reported by: chris-mac
Tested by: chris-mac

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=161721

By: hasan (hdudic) 2013-01-26 09:58:10.320-0600

Hi Guys, I am hitting this bug but cant find the diff file. Where can I download it so I can patch the system? Thanks in advance