[asterisk-bugs] [Asterisk 0011080]: SIP channel stops processing calls, but no apparent deadlock

noreply at bugs.digium.com noreply at bugs.digium.com
Fri Nov 9 08:34:01 CST 2007


The following issue has been REOPENED. 
====================================================================== 
http://bugs.digium.com/view.php?id=11080 
====================================================================== 
Reported By:                callguy
Assigned To:                russell
====================================================================== 
Project:                    Asterisk
Issue ID:                   11080
Category:                   Channels/chan_sip/General
Reproducibility:            always
Severity:                   block
Priority:                   normal
Status:                     feedback
Asterisk Version:           1.4.13  
SVN Branch (only for SVN checkouts, not tarball releases): N/A  
SVN Revision (number only!):  
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             10-24-2007 15:58 CDT
Last Modified:              11-09-2007 08:34 CST
====================================================================== 
Summary:                    SIP channel stops processing calls, but no apparent
deadlock
Description: 
Approximately once per week we are seeing asterisk stop processing SIP
calls. The behavior is the same as a deadlock, but core show locks does not
show any evidence that there is a deadlock. 

The only way to resolve is to restart asterisk. 

output of:
core show locks
info thread
thread apply all bt

from the running process is attached.
====================================================================== 

---------------------------------------------------------------------- 
 callguy - 11-09-07 08:34  
---------------------------------------------------------------------- 
russell: we just had this happen again, against 1.4 r87739, so i don't
believe that the issue is completely resolved. I captured a thread apply
all bt, which looks fine with the exception of this thread:

Thread 66 (Thread 3767216 (LWP 31690)):
http://bugs.digium.com/view.php?id=0  0x00bd57a2 in _dl_sysinfo_int80 () from
/lib/ld-linux.so.2
http://bugs.digium.com/view.php?id=1  0x00dd41de in __lll_mutex_lock_wait ()
from /lib/tls/libpthread.so.0
http://bugs.digium.com/view.php?id=2  0x00dd0e3b in _L_mutex_lock_35 () from
/lib/tls/libpthread.so.0
http://bugs.digium.com/view.php?id=3  0x00395d88 in ?? ()
http://bugs.digium.com/view.php?id=4  0x00509e68 in ?? () from
/usr/lib/asterisk/modules/chan_sip.so
http://bugs.digium.com/view.php?id=5  0xb5e51fa0 in ?? ()
http://bugs.digium.com/view.php?id=6  0x003960e0 in ?? ()
http://bugs.digium.com/view.php?id=7  0x00395d58 in ?? ()
http://bugs.digium.com/view.php?id=8  0x004abf6c in __ast_pthread_mutex_lock
(filename=0xb5e51fa0 "\002",
lineno=5218371, 
    func=0x853 <Address 0x853 out of bounds>, mutex_name=0x4fadc7
"__sip_ack", t=0x4fadd1)
    at
/usr/src/asterisk-trunk/1.4/asterisk-1.4/include/asterisk/lock.h:356
http://bugs.digium.com/view.php?id=9  0x004abf6c in __ast_pthread_mutex_lock
(filename=0x4fa043
"chan_sip.c", lineno=2131, func=0x4fadc7 "__sip_ack", 
    mutex_name=0x4fadd1 "&p->lock", t=0xb5e51fa0)
    at
/usr/src/asterisk-trunk/1.4/asterisk-1.4/include/asterisk/lock.h:356
http://bugs.digium.com/view.php?id=10 0x004acdc1 in __sip_ack (p=0xb5e51fa0,
seqno=102, resp=0, sipmethod=3)
at chan_sip.c:2131
http://bugs.digium.com/view.php?id=11 0x004e022d in handle_response
(p=0xb5e51fa0, resp=200, rest=0x396308
"OK", req=0x3960e0, ignore=0, seqno=102)
    at chan_sip.c:12398
http://bugs.digium.com/view.php?id=12 0x004eb7ee in handle_request
(p=0xb5e51fa0, req=0x3960e0,
sin=0x3960d0, recount=0x3960bc, nounlock=0x3960c0)
    at chan_sip.c:14976
http://bugs.digium.com/view.php?id=13 0x004ec8c8 in sipsock_read (id=0x82085a8,
fd=15, events=1, ignore=0x0)
at chan_sip.c:15203
http://bugs.digium.com/view.php?id=14 0x080b2a13 in ast_io_wait (ioc=0x8206f80,
howlong=1) at io.c:279
http://bugs.digium.com/view.php?id=15 0x004ed447 in do_monitor (data=0x0) at
chan_sip.c:15406
http://bugs.digium.com/view.php?id=16 0x0810c270 in dummy_start (data=0x82106e0)
at utils.c:843
http://bugs.digium.com/view.php?id=17 0x00dcf371 in start_thread () from
/lib/tls/libpthread.so.0
http://bugs.digium.com/view.php?id=18 0x00cbaffe in clone () from
/lib/tls/libc.so.6

The lock.h reference is in the lock debugging code, but it looks like the
out of bounds variable is in _sip_ack. I'm not sure if this could be
related to some of the fixes you put in around 88805 - though those seemed
to all be reported as crashes and not deadlocks. 

Issue History 
Date Modified   Username       Field                    Change               
====================================================================== 
11-09-07 08:34  callguy        Status                   closed => feedback  
11-09-07 08:34  callguy        Resolution               fixed => reopened   
11-09-07 08:34  callguy        Note Added: 0073436                          
======================================================================




More information about the asterisk-bugs mailing list