[Asterisk-Users] Deadlocks in 1.2.7.1

Philipp Ott philipp.ott at avalon.at
Tue May 23 01:23:15 MST 2006


Hello!

Am 17.05.2006 um 13:05 schrieb Philipp Ott:

> Hello!
>
> Unfortunately we are seeing lately (2-3 times during a day) that  
> asterisk seems to hang up somehow - no new calls can be made and  
> sip show peers and other commands show no obvious problem.  We then  
> recompiled 1.2.7.1 with all the DEBUG_ turned on in the makefile  
> and now we see the following messages:
>
> May 17 06:46:05 ERROR[8606]: ../include/asterisk/lock.h:236  
> __ast_pthread_mutex_lock: chan_sip.c line 3116 (sip_alloc):  
> Deadlock? waited 460 sec for mutex '&iflock'?
> May 17 06:46:05 ERROR[8606]: ../include/asterisk/lock.h:239  
> __ast_pthread_mutex_lock: chan_sip.c line 11257 (do_monitor):  
> '&iflock' was locked here.
> May 17 06:46:05 ERROR[8625]: include/asterisk/lock.h:236  
> __ast_pthread_mutex_lock: pbx.c line 2017  
> (ast_extension_state_del): Deadlock? waited 460 sec for mutex  
> '&hintlock'?
> May 17 06:46:05 ERROR[8625]: include/asterisk/lock.h:239  
> __ast_pthread_mutex_lock: pbx.c line 1892 (ast_hint_state_changed):  
> '&hintlock' was locked here.
> May 17 06:46:05 ERROR[8606]: ../include/asterisk/lock.h:236  
> __ast_pthread_mutex_lock: chan_sip.c line 3116 (sip_alloc):  
> Deadlock? waited 460 sec for mutex '&iflock'?
> May 17 06:46:05 ERROR[8606]: ../include/asterisk/lock.h:239  
> __ast_pthread_mutex_lock: chan_sip.c line 11257 (do_monitor):  
> '&iflock' was locked here.
> May 17 06:46:05 ERROR[8625]: include/asterisk/lock.h:236  
> __ast_pthread_mutex_lock: pbx.c line 2017  
> (ast_extension_state_del): Deadlock? waited 460 sec for mutex  
> '&hintlock'?
> May 17 06:46:05 ERROR[8625]: include/asterisk/lock.h:239  
> __ast_pthread_mutex_lock: pbx.c line 1892 (ast_hint_state_changed):  
> '&hintlock' was locked here.
> May 17 06:46:05 ERROR[8606]: ../include/asterisk/lock.h:236  
> __ast_pthread_mutex_lock: chan_sip.c line 3116 (sip_alloc):  
> Deadlock? waited 460 sec for mutex '&iflock'?
> May 17 06:46:05 ERROR[8606]: ../include/asterisk/lock.h:239  
> __ast_pthread_mutex_lock: chan_sip.c line 11257 (do_monitor):  
> '&iflock' was locked here.
> May 17 06:46:05 ERROR[8625]: include/asterisk/lock.h:236  
> __ast_pthread_mutex_lock: pbx.c line 2017  
> (ast_extension_state_del): Deadlock? waited 460 sec for mutex  
> '&hintlock'?
> May 17 06:46:05 ERROR[8625]: include/asterisk/lock.h:239  
> __ast_pthread_mutex_lock: pbx.c line 1892 (ast_hint_state_changed):  
> '&hintlock' was locked here.
> May 17 06:46:05 ERROR[8606]: ../include/asterisk/lock.h:236  
> __ast_pthread_mutex_lock: chan_sip.c line 3116 (sip_alloc):  
> Deadlock? waited 460 sec for mutex '&iflock'?
> May 17 06:46:05 ERROR[8606]: ../include/asterisk/lock.h:239  
> __ast_pthread_mutex_lock: chan_sip.c line 11257 (do_monitor):  
> '&iflock' was locked here.
>
> This continues until someone stops asterisks and restarts it.


Stepping back to version 1.2.4 solves the problem of a hanging  
asterisk, however occassionally we see 5-15 seconds runs of

May 23 00:28:35 DEBUG[3212] chan_sip.c: Failed to grab lock, trying  
again...

messages in the log file and during this time no call processing  
happens. Then asterisk recovers from this locking state and  
continues. 1.2.7.1 hangs in there forever.

Any clues as to why this happens?

Regards
Philipp Ott




More information about the asterisk-users mailing list