[asterisk-bugs] [Asterisk 0018491]: [patch] fix SIP indicate deadlocks when lots of state changes
Asterisk Bug Tracker
noreply at bugs.digium.com
Thu Feb 3 17:49:31 CST 2011
A NOTE has been added to this issue.
======================================================================
https://issues.asterisk.org/view.php?id=18491
======================================================================
Reported By: cmaj
Assigned To:
======================================================================
Project: Asterisk
Issue ID: 18491
Category: Channels/chan_sip/General
Reproducibility: always
Severity: minor
Priority: normal
Status: acknowledged
Asterisk Version: 1.8.1.1
JIRA: SWP-2760
Regression: No
Reviewboard Link:
SVN Branch (only for SVN checkouts, not tarball releases): N/A
SVN Revision (number only!):
Request Review:
======================================================================
Date Submitted: 2010-12-16 16:21 CST
Last Modified: 2011-02-03 17:49 CST
======================================================================
Summary: [patch] fix SIP indicate deadlocks when lots of
state changes
Description:
Running 1.8.2-rc1 and was able to deadlock several times during failed SIP
state change indications. Found by testing 4 SIP phones in close proximity
and rapidly, yet manually, transferring blind, parking calls, picking them
up at another phone, etc. Also, was using the Bridge() app for buddy
pickup purposes.
======================================================================
----------------------------------------------------------------------
(0131486) svnbot (reporter) - 2011-02-03 17:49
https://issues.asterisk.org/view.php?id=18491#c131486
----------------------------------------------------------------------
Repository: asterisk
Revision: 306215
U branches/1.8/channels/chan_sip.c
------------------------------------------------------------------------
r306215 | jpeeler | 2011-02-03 17:49:28 -0600 (Thu, 03 Feb 2011) | 20
lines
Fix SIP deadlock involving state changes.
Once again a call to pbx_builtin_getvar_helper (and
pbx_builtin_setvar_helper)
has caused locking problems. Both of these functions lock the channel when
the channel argument is passed in!
In this case, the suspected problem (the backtrace makes it impossible to
tell)
was the private being locked in sip_set_rtp_peer and then:
transmit_reinvite_with_sdp
try_suggested_sip_codec
pbx_builtin_getvar_helper
(Traced to verify that the fix was only required in 1.8 and later.)
(closes issue https://issues.asterisk.org/view.php?id=18491)
Reported by: cmaj
Patches:
chan_sip_fix_deadlocks_bug_18491.txt uploaded by cmaj (license 830)
Tested by: cmaj
------------------------------------------------------------------------
http://svn.digium.com/view/asterisk?view=rev&revision=306215
Issue History
Date Modified Username Field Change
======================================================================
2011-02-03 17:49 svnbot Checkin
2011-02-03 17:49 svnbot Note Added: 0131486
======================================================================
More information about the asterisk-bugs
mailing list