[asterisk-bugs] [Asterisk 0018165]: hint state changes deadlock problem

Asterisk Bug Tracker noreply at bugs.digium.com
Tue Oct 19 13:45:26 CDT 2010


The following issue has been SUBMITTED. 
====================================================================== 
https://issues.asterisk.org/view.php?id=18165 
====================================================================== 
Reported By:                antonio
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   18165
Category:                   Core/PBX
Reproducibility:            have not tried
Severity:                   major
Priority:                   normal
Status:                     new
Asterisk Version:           1.6.2.13 
JIRA:                        
Regression:                 No 
Reviewboard Link:            
SVN Branch (only for SVN checkouts, not tarball releases): N/A 
SVN Revision (number only!):  
Request Review:              
====================================================================== 
Date Submitted:             2010-10-19 13:45 CDT
Last Modified:              2010-10-19 13:45 CDT
====================================================================== 
Summary:                    hint state changes deadlock problem
Description: 
What happens is there are two threads that lock resources in a different
order causing a deadlock.

The threads are:

1. from taskprocessor handle_statechange() is called. This one locks
ast_rdlock_contexts, and then eventually call cb_extensionstate() which
immediately does a sip_pvt_lock()

2. do_monitor calls sipsock_read() which calls handle_request_do() which
calls find_call(), which does a sip_pvt_lock() too. The incoming request is
a subscription, so it calls ast_get_hint(), which calls
ast_hint_extension() which calls ast_rdlock_contexts(). Deadlock.

====================================================================== 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2010-10-19 13:45 antonio        New Issue                                    
2010-10-19 13:45 antonio        Asterisk Version          => 1.6.2.13        
2010-10-19 13:45 antonio        Regression                => No              
2010-10-19 13:45 antonio        SVN Branch (only for SVN checkouts, not tarball
releases) => N/A             
======================================================================




More information about the asterisk-bugs mailing list