[asterisk-bugs] [Asterisk 0010374]: Asterisk locks and no new calls allowed. Doesn't crash but have to restart Asterisk to get calls to flow again.

noreply at bugs.digium.com noreply at bugs.digium.com
Thu Sep 6 17:10:36 CDT 2007


The following issue has been ASSIGNED. 
====================================================================== 
http://bugs.digium.com/view.php?id=10374 
====================================================================== 
Reported By:                PhilSmith
Assigned To:                russell
====================================================================== 
Project:                    Asterisk
Issue ID:                   10374
Category:                   Core-General
Reproducibility:            random
Severity:                   block
Priority:                   normal
Status:                     assigned
Asterisk Version:           1.4.9  
SVN Branch (only for SVN checkouts, not tarball releases): N/A  
SVN Revision (number only!):  
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             08-03-2007 14:12 CDT
Last Modified:              09-06-2007 17:10 CDT
====================================================================== 
Summary:                    Asterisk locks and no new calls allowed.  Doesn't
crash but have to restart Asterisk to get calls to flow again.
Description: 
Asterisk seems to lock randomly and have not yet found a pattern to why.
Current calls continue without issue but no new calls in or out are
allowed.
Restart the Asterisk application and it will work again for a few hours.

Asterisk was rebuilt with 1.4.9 with DEBUG_THREADS and DONT_OPTIMIZE
enabled then started with /usr/sbin/asterisk -vvvg -c

The backtrace.txt that is attached was gathered in this manor:
ps -aux to get pid of asterisk
[root at pbx] # script /tmp/backtrace.txt
[root at pbx] # gdb /usr/sbin/asterisk pid 
Once you get into gdb, then issue: "set pagination off" to turn of paging.

then issue: info thread
then issue: thread apply all bt
Once you have the output in a file quit out.
Restart Asterisk
======================================================================
Relationships       ID      Summary
----------------------------------------------------------------------
related to          0009724 SIP Transfers To Parking Lot From Grand...
====================================================================== 

---------------------------------------------------------------------- 
 svnbot - 09-06-07 17:10  
---------------------------------------------------------------------- 
Repository: asterisk
Revision: 81832

------------------------------------------------------------------------
r81832 | russell | 2007-09-06 17:10:34 -0500 (Thu, 06 Sep 2007) | 16 lines

(closes issue http://bugs.digium.com/view.php?id=9724, closes issue
http://bugs.digium.com/view.php?id=10374)
Reported by: kenw
Patches:
      9724.txt uploaded by russell (license 2)
Tested by: kenw, russell

Resolve a deadlock that occurs when doing a SIP transfer to parking.  

I come across this type of deadlock fairly often it seems.  It is very
important
to mind the boundary between the channel driver and the core in respect to
the
channel lock and the channel-pvt lock.  Channel drivers lock to lock the
pvt and then the channel once it calls into the core, while the core will
do
it in the opposite order.  The way this is avoided is by having channel
drivers
either release their pvt lock while calling into the core, or such as in
this
case, unlocking the pvt just long enough to acquire the channel lock.

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

Issue History 
Date Modified   Username       Field                    Change               
====================================================================== 
09-06-07 17:10  svnbot         Checkin                                      
09-06-07 17:10  svnbot         Note Added: 0070071                          
09-06-07 17:10  svnbot         Status                   feedback => assigned
09-06-07 17:10  svnbot         Assigned To               => russell         
======================================================================




More information about the asterisk-bugs mailing list