[asterisk-bugs] [Asterisk 0018434]: Asterisk 1.8.0 locks up under OpenSUSE 10.3

Asterisk Bug Tracker noreply at bugs.digium.com
Wed Dec 8 00:51:43 CST 2010


A NOTE has been added to this issue. 
====================================================================== 
https://issues.asterisk.org/view.php?id=18434 
====================================================================== 
Reported By:                craigarno
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   18434
Category:                   Resources/res_musiconhold
Reproducibility:            random
Severity:                   minor
Priority:                   normal
Status:                     feedback
Asterisk Version:           1.8.0 
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-12-07 10:54 CST
Last Modified:              2010-12-08 00:51 CST
====================================================================== 
Summary:                    Asterisk 1.8.0 locks up under OpenSUSE 10.3
Description: 
Asterisk 1.8.0 locks up in less than 24 hours <twice> on my lightly used
installation.

Asterisk 1.8.0-rc2 is stable on the same system.  So changes between RC2
and Release are likely contributing problems for my installation.

No Add-Ons, just stock 1.8.0 distribution.

In locked-up state:
 - CLI (asterisk -vvvr) seems to still be alive in locked state.
 - [core stop now] CLI command has no effect.  Asterisk process continues
to stay resident.
 - asterisk process does not respond to "kill <processID>"
 - kill -9 is needed to remove asterisk prior to restarting.


My system:
  OpenSUSE 10.3 x64/AMD
  Athlon64 X2 5200+/8GB RAM/1.5TB disk
  Is stable (hardware and software)

I can provide OpenSUSE 10.3 ISO if needed (hard to find on OpenSUSE
site).

I rolled back to RC2 since I can't afford to have my phone system continue
to randomly crash every day.  Hopefully a future release will address this
issue.
====================================================================== 

---------------------------------------------------------------------- 
 (0129457) craigarno (reporter) - 2010-12-08 00:51
 https://issues.asterisk.org/view.php?id=18434#c129457 
---------------------------------------------------------------------- 
With the musiconhold.conf that causes the crash, asterisk compiled for
debug, I got a lockup.  Unfortunately I ran with -g, but forgot -c.  kill
PID didn't work.  I did get a listing of locks, which I'll post here.  As
noted before, "core stop now" doesn't work either.

I'm rerunning with "asterisk -vvvg -c" as the wiki suggests and expect
another lockup before morning.  Here is the "core show locks" information;



gerty*CLI> core show locks

=======================================================================
=== Currently Held Locks ==============================================
=======================================================================
===
=== <pending> <lock#> (<file>): <lock type> <line num> <function> <lock
name> <lock addr> (times 

locked)
===
=== Thread ID: 1080342864 (do_timing            started at [  479]
res_timing_pthread.c 

init_timing_thread())
=== ---> Lock https://issues.asterisk.org/view.php?id=0 (astobj2.c): MUTEX 657
internal_ao2_callback c 0xf59fc0
(1)
        asterisk(ast_bt_get_addresses+0x1a) [0x4e3639]
        asterisk(__ast_pthread_mutex_lock+0xad) [0x4dc880]
        asterisk(__ao2_lock+0x53) [0x443c91]
        asterisk [0x444a83]
        asterisk(__ao2_callback+0x59) [0x444ff6]
        /usr/lib/asterisk/modules/res_timing_pthread.so [0x2aaab228ff9e]
        asterisk [0x55c5ca]
        /lib64/libpthread.so.0 [0x2b93d78e2020]
        /lib64/libc.so.6(clone+0x6d) [0x2b93d6c9ef8d]
=== ---> Lock https://issues.asterisk.org/view.php?id=1 (res_timing_pthread.c):
MUTEX 437 run_timer timer
0x7153ae0 (1)
        asterisk(ast_bt_get_addresses+0x1a) [0x4e3639]
        asterisk(__ast_pthread_mutex_lock+0xad) [0x4dc880]
        asterisk(__ao2_lock+0x53) [0x443c91]
        /usr/lib/asterisk/modules/res_timing_pthread.so [0x2aaab228fefe]
        asterisk [0x444bbf]
        asterisk(__ao2_callback+0x59) [0x444ff6]
        /usr/lib/asterisk/modules/res_timing_pthread.so [0x2aaab228ff9e]
        asterisk [0x55c5ca]
        /lib64/libpthread.so.0 [0x2b93d78e2020]
        /lib64/libc.so.6(clone+0x6d) [0x2b93d6c9ef8d]
=== -------------------------------------------------------------------
===
=== Thread ID: 1088469328 (do_monitor           started at [24372]
chan_sip.c restart_monitor())
=== ---> Lock https://issues.asterisk.org/view.php?id=0 (chan_sip.c): MUTEX
23866 handle_request_do &netlock
0x2aaad17aef80 (1)
        asterisk(ast_bt_get_addresses+0x1a) [0x4e3639]
        asterisk(__ast_pthread_mutex_lock+0xad) [0x4dc880]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad1564484]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad156426c]
        asterisk(ast_io_wait+0x1ba) [0x4d6c30]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad1565f91]
        asterisk [0x55c5ca]
        /lib64/libpthread.so.0 [0x2b93d78e2020]
        /lib64/libc.so.6(clone+0x6d) [0x2b93d6c9ef8d]
=== ---> Lock https://issues.asterisk.org/view.php?id=1 (chan_sip.c): MUTEX 7415
find_call sip_pvt_ptr 0x71a1270
(1)
        asterisk(ast_bt_get_addresses+0x1a) [0x4e3639]
        asterisk(__ast_pthread_mutex_lock+0xad) [0x4dc880]
        asterisk(__ao2_lock+0x53) [0x443c91]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad1510b83]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad1564498]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad156426c]
        asterisk(ast_io_wait+0x1ba) [0x4d6c30]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad1565f91]
        asterisk [0x55c5ca]
        /lib64/libpthread.so.0 [0x2b93d78e2020]
        /lib64/libc.so.6(clone+0x6d) [0x2b93d6c9ef8d]
=== ---> Lock https://issues.asterisk.org/view.php?id=2 (chan_sip.c): MUTEX
23880 handle_request_do p->owner
0x718d170 (2)
        asterisk(ast_bt_get_addresses+0x1a) [0x4e3639]
        asterisk(__ast_pthread_mutex_lock+0xad) [0x4dc880]
        asterisk(__ao2_lock+0x53) [0x443c91]
        asterisk [0x46a55b]
        asterisk(ast_queue_frame+0x27) [0x46ab42]
        asterisk(ast_queue_control_data+0x81) [0x46add5]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad1516525]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad1558c83]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad15637d4]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad15649c6]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad156426c]
        asterisk(ast_io_wait+0x1ba) [0x4d6c30]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad1565f91]
        asterisk [0x55c5ca]
        /lib64/libpthread.so.0 [0x2b93d78e2020]
        /lib64/libc.so.6(clone+0x6d) [0x2b93d6c9ef8d]
=== ---> Waiting for Lock https://issues.asterisk.org/view.php?id=3 (astobj2.c):
MUTEX 657 internal_ao2_callback
c 0xf59fc0 (1)
        asterisk(ast_bt_get_addresses+0x1a) [0x4e3639]
        asterisk(__ast_pthread_mutex_lock+0xad) [0x4dc880]
        asterisk(__ao2_lock+0x53) [0x443c91]
        asterisk [0x444a83]
        asterisk(__ao2_callback+0x59) [0x444ff6]
        asterisk(__ao2_find+0x2b) [0x44514f]
        /usr/lib/asterisk/modules/res_timing_pthread.so [0x2aaab228fa90]
        /usr/lib/asterisk/modules/res_timing_pthread.so [0x2aaab228f82a]
        asterisk(ast_timer_enable_continuous+0x2b) [0x5508d2]
        asterisk [0x46aaaf]
        asterisk(ast_queue_frame+0x27) [0x46ab42]
        asterisk(ast_queue_control_data+0x81) [0x46add5]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad1516525]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad1558c83]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad15637d4]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad15649c6]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad156426c]
        asterisk(ast_io_wait+0x1ba) [0x4d6c30]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad1565f91]
        asterisk [0x55c5ca]
        /lib64/libpthread.so.0 [0x2b93d78e2020]
        /lib64/libc.so.6(clone+0x6d) [0x2b93d6c9ef8d]
=== --- ---> Locked Here: astobj2.c line 657 (internal_ao2_callback)
=== -------------------------------------------------------------------
===
=== Thread ID: 1094056272 (monmp3thread         started at [ 1180]
res_musiconhold.c 

init_app_class())
=== ---> Waiting for Lock https://issues.asterisk.org/view.php?id=0 (astobj2.c):
MUTEX 657 internal_ao2_callback
c 0xf59fc0 (1)
        asterisk(ast_bt_get_addresses+0x1a) [0x4e3639]
        asterisk(__ast_pthread_mutex_lock+0xad) [0x4dc880]
        asterisk(__ao2_lock+0x53) [0x443c91]
        asterisk [0x444a83]
        asterisk(__ao2_callback+0x59) [0x444ff6]
        asterisk(__ao2_find+0x2b) [0x44514f]
        /usr/lib/asterisk/modules/res_timing_pthread.so [0x2aaab228fa90]
        /usr/lib/asterisk/modules/res_timing_pthread.so [0x2aaab228f82a]
        asterisk(ast_timer_enable_continuous+0x2b) [0x5508d2]
        asterisk [0x46aaaf]
        asterisk(ast_queue_frame+0x27) [0x46ab42]
        asterisk(ast_queue_control_data+0x81) [0x46add5]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad1516525]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad1558c83]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad15637d4]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad15649c6]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad156426c]
        asterisk(ast_io_wait+0x1ba) [0x4d6c30]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad1565f91]
        asterisk [0x55c5ca]
        /lib64/libpthread.so.0 [0x2b93d78e2020]
        /lib64/libc.so.6(clone+0x6d) [0x2b93d6c9ef8d]
=== --- ---> Locked Here: astobj2.c line 657 (internal_ao2_callback)
=== -------------------------------------------------------------------
===
=== Thread ID: 1094564176 (monmp3thread         started at [ 1180]
res_musiconhold.c 

init_app_class())
=== ---> Waiting for Lock https://issues.asterisk.org/view.php?id=0 (astobj2.c):
MUTEX 657 internal_ao2_callback
c 0xf59fc0 (1)
        asterisk(ast_bt_get_addresses+0x1a) [0x4e3639]
        asterisk(__ast_pthread_mutex_lock+0xad) [0x4dc880]
        asterisk(__ao2_lock+0x53) [0x443c91]
        asterisk [0x444a83]
        asterisk(__ao2_callback+0x59) [0x444ff6]
        asterisk(__ao2_find+0x2b) [0x44514f]
        /usr/lib/asterisk/modules/res_timing_pthread.so [0x2aaab228fa90]
        /usr/lib/asterisk/modules/res_timing_pthread.so [0x2aaab228f82a]
        asterisk(ast_timer_enable_continuous+0x2b) [0x5508d2]
        asterisk [0x46aaaf]
        asterisk(ast_queue_frame+0x27) [0x46ab42]
        asterisk(ast_queue_control_data+0x81) [0x46add5]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad1516525]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad1558c83]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad15637d4]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad15649c6]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad156426c]
        asterisk(ast_io_wait+0x1ba) [0x4d6c30]
        /usr/lib/asterisk/modules/chan_sip.so [0x2aaad1565f91]
        asterisk [0x55c5ca]
        /lib64/libpthread.so.0 [0x2b93d78e2020]
        /lib64/libc.so.6(clone+0x6d) [0x2b93d6c9ef8d]
=== --- ---> Locked Here: astobj2.c line 657 (internal_ao2_callback)
=== -------------------------------------------------------------------
===
=== Thread ID: 1095072080 (pbx_thread           started at [ 5007] pbx.c
ast_pbx_start())
=== ---> Waiting for Lock https://issues.asterisk.org/view.php?id=0 (channel.c):
MUTEX 3021 ast_waitfor_nandfds
c[x] 0x718d170 (1)
        asterisk(ast_bt_get_addresses+0x1a) [0x4e3639]
        asterisk(__ast_pthread_mutex_lock+0xad) [0x4dc880]
        asterisk(__ao2_lock+0x53) [0x443c91]
        asterisk(ast_waitfor_nandfds+0x229) [0x46eeae]
        asterisk(ast_waitfor_n+0x3d) [0x46f8b3]
        asterisk [0x51cec9]
        asterisk(ast_rtp_instance_bridge+0x752) [0x51f279]
        asterisk(ast_channel_bridge+0x10e3) [0x47dea2]
        asterisk(ast_bridge_call+0xdcc) [0x4b92ad]
        /usr/lib/asterisk/modules/app_dial.so [0x2aaac9c6580c]
        /usr/lib/asterisk/modules/app_dial.so [0x2aaac9c66172]
        asterisk(pbx_exec+0x1f1) [0x4fb26b]
        asterisk [0x504d66]
        asterisk(ast_spawn_extension+0x64) [0x5066f4]
        /usr/lib/asterisk/modules/app_macro.so [0x2aaac4b3bcfc]
        /usr/lib/asterisk/modules/app_macro.so [0x2aaac4b3cf00]
        asterisk(pbx_exec+0x1f1) [0x4fb26b]
        asterisk [0x504d66]
        asterisk(ast_spawn_extension+0x64) [0x5066f4]
        asterisk [0x507199]
        asterisk [0x508e28]
        asterisk [0x55c5ca]
        /lib64/libpthread.so.0 [0x2b93d78e2020]
        /lib64/libc.so.6(clone+0x6d) [0x2b93d6c9ef8d]
=== --- ---> Locked Here: chan_sip.c line 23880 (handle_request_do)
=== --- ---> Locked Here: channel.c line 1359 (__ast_queue_frame)
=== -------------------------------------------------------------------
===
=======================================================================

gerty*CLI> 


With any luck I'll have "bt" and "bt full" tomorrow.

What was added to asterisk that is invoked with "-g" to produce core dump
information?  (I know how to read C/C++ code)  Is there documentation you
can point me to which might answer this question? 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2010-12-08 00:51 craigarno      Note Added: 0129457                          
======================================================================




More information about the asterisk-bugs mailing list