[asterisk-bugs] [Asterisk 0013380]: [patch] pthread_cancel segmentation faults

Asterisk Bug Tracker noreply at bugs.digium.com
Thu Aug 28 00:08:51 CDT 2008


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=13380 
====================================================================== 
Reported By:                Matti
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   13380
Category:                   Channels/chan_h323
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     feedback
Asterisk Version:           1.2.X 
SVN Branch (only for SVN checkouts, not tarball releases):  1.2  
SVN Revision (number only!):  
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             2008-08-27 01:20 CDT
Last Modified:              2008-08-28 00:08 CDT
====================================================================== 
Summary:                    [patch] pthread_cancel segmentation faults
Description: 
pthread_cancel segmentation faults when the bind address in h323.conf is
not configured in Linux. A detached thread must not be cancelled.
====================================================================== 

---------------------------------------------------------------------- 
 (0091848) Matti (reporter) - 2008-08-28 00:08
 http://bugs.digium.com/view.php?id=13380#c91848 
---------------------------------------------------------------------- 
The linked messages says that the thread ID can become invalid after
detachment. That is a sufficient reason. pthread_cancel means that the
thread ID can be reused after the exit of the thread.

bash-3.1# gdb /usr/sbin/asterisk /tmp/core.4328
GNU gdb 6.4
Copyright 2005 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you
are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for
details.
This GDB was configured as "i586-akira_i586nptl-linux-gnu"...
(no debugging symbols found)
Using host libthread_db library "/lib/libthread_db.so.1".

(no debugging symbols found)
Core was generated by `/usr/sbin/asterisk -f'.
Program terminated with signal 11, Segmentation fault.

warning: Can't read pathname for load map: Input/output error.
Reading symbols from /lib/libdl.so.2...(no debugging symbols
found)...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib/libpthread.so.0...done.
Loaded symbols for /lib/libpthread.so.0
Reading symbols from /lib/libncurses.so.5...done.
Loaded symbols for /lib/libncurses.so.5
Reading symbols from /lib/libm.so.6...done.
Loaded symbols for /lib/libm.so.6
Reading symbols from /lib/libresolv.so.2...done.
Loaded symbols for /lib/libresolv.so.2
Reading symbols from /usr/lib/libssl.so.0.9.8...done.
Loaded symbols for /usr/lib/libssl.so.0.9.8
Reading symbols from /lib/libc.so.6...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /usr/lib/libcrypto.so.0.9.8...done.
Loaded symbols for /usr/lib/libcrypto.so.0.9.8
Reading symbols from /usr/lib/asterisk/modules/app_mp3.so...done.
Loaded symbols for /usr/lib/asterisk/modules/app_mp3.so
Reading symbols from /usr/lib/asterisk/modules/res_features.so...done.
Loaded symbols for /usr/lib/asterisk/modules/res_features.so
Reading symbols from /usr/lib/asterisk/modules/chan_sip.so...done.
Loaded symbols for /usr/lib/asterisk/modules/chan_sip.so
Reading symbols from /lib/libnss_files.so.2...done.
Loaded symbols for /lib/libnss_files.so.2
Reading symbols from /lib/libnss_dns.so.2...done.
Loaded symbols for /lib/libnss_dns.so.2
Reading symbols from /usr/lib/asterisk/modules/res_musiconhold.so...done.
Loaded symbols for /usr/lib/asterisk/modules/res_musiconhold.so
Reading symbols from /usr/lib/asterisk/modules/app_meetme.so...done.
Loaded symbols for /usr/lib/asterisk/modules/app_meetme.so
Reading symbols from /usr/lib/asterisk/modules/res_indications.so...done.
Loaded symbols for /usr/lib/asterisk/modules/res_indications.so
Reading symbols from /usr/lib/asterisk/modules/res_snmp.so...done.
Loaded symbols for /usr/lib/asterisk/modules/res_snmp.so
Reading symbols from /usr/lib/libnetsnmpmibs.so.15...done.
Loaded symbols for /usr/lib/libnetsnmpmibs.so.15
Reading symbols from /usr/lib/libnetsnmpagent.so.15...done.
Loaded symbols for /usr/lib/libnetsnmpagent.so.15
Reading symbols from /usr/lib/libnetsnmphelpers.so.15...done.
Loaded symbols for /usr/lib/libnetsnmphelpers.so.15
Reading symbols from /usr/lib/libnetsnmp.so.15...done.
Loaded symbols for /usr/lib/libnetsnmp.so.15
Reading symbols from /usr/lib/libperl.so...done.
Loaded symbols for /usr/lib/libperl.so
Reading symbols from /lib/libnsl.so.1...done.
Loaded symbols for /lib/libnsl.so.1
Reading symbols from /lib/libcrypt.so.1...done.
Loaded symbols for /lib/libcrypt.so.1
Reading symbols from /lib/libutil.so.1...done.
Loaded symbols for /lib/libutil.so.1
Reading symbols from /usr/lib/asterisk/modules/res_esel.so...done.
Loaded symbols for /usr/lib/asterisk/modules/res_esel.so
Reading symbols from /usr/lib/asterisk/modules/res_watchdog.so...done.
Loaded symbols for /usr/lib/asterisk/modules/res_watchdog.so
Reading symbols from /usr/lib/asterisk/modules/res_agi.so...done.
Loaded symbols for /usr/lib/asterisk/modules/res_agi.so
Reading symbols from /usr/lib/asterisk/modules/res_crypto.so...done.
Loaded symbols for /usr/lib/asterisk/modules/res_crypto.so
Reading symbols from /usr/lib/asterisk/modules/res_adsi.so...done.
Loaded symbols for /usr/lib/asterisk/modules/res_adsi.so
Reading symbols from
/usr/lib/asterisk/modules/res_valetparking.so...done.
Loaded symbols for /usr/lib/asterisk/modules/res_valetparking.so
Reading symbols from /usr/lib/asterisk/modules/res_monitor.so...done.
Loaded symbols for /usr/lib/asterisk/modules/res_monitor.so
Reading symbols from /usr/lib/asterisk/modules/pbx_dundi.so...done.
Loaded symbols for /usr/lib/asterisk/modules/pbx_dundi.so
Reading symbols from /usr/lib/libz.so.1...done.
Loaded symbols for /usr/lib/libz.so.1
Reading symbols from /usr/lib/asterisk/modules/pbx_functions.so...done.
Loaded symbols for /usr/lib/asterisk/modules/pbx_functions.so
Reading symbols from /usr/lib/asterisk/modules/pbx_ael.so...done.
Loaded symbols for /usr/lib/asterisk/modules/pbx_ael.so
Reading symbols from /usr/lib/asterisk/modules/pbx_spool.so...done.
Loaded symbols for /usr/lib/asterisk/modules/pbx_spool.so
Reading symbols from /usr/lib/asterisk/modules/pbx_loopback.so...done.
Loaded symbols for /usr/lib/asterisk/modules/pbx_loopback.so
Reading symbols from /usr/lib/asterisk/modules/pbx_config.so...done.
Loaded symbols for /usr/lib/asterisk/modules/pbx_config.so
Reading symbols from /usr/lib/asterisk/modules/pbx_realtime.so...done.
Loaded symbols for /usr/lib/asterisk/modules/pbx_realtime.so
Reading symbols from /usr/lib/asterisk/modules/chan_mgcp.so...done.
Loaded symbols for /usr/lib/asterisk/modules/chan_mgcp.so
Reading symbols from /usr/lib/asterisk/modules/chan_zap.so...done.
Loaded symbols for /usr/lib/asterisk/modules/chan_zap.so
Reading symbols from /usr/lib/libpri.so.1.0...done.
Loaded symbols for /usr/lib/libpri.so.1.0
Reading symbols from /usr/lib/libgsmat.so.1...done.
Loaded symbols for /usr/lib/libgsmat.so.1
Reading symbols from /usr/lib/libtonezone.so.1.0...done.
Loaded symbols for /usr/lib/libtonezone.so.1.0
Reading symbols from /usr/lib/asterisk/modules/chan_local.so...done.
Loaded symbols for /usr/lib/asterisk/modules/chan_local.so
Reading symbols from /usr/lib/asterisk/modules/chan_iax2.so...done.
Loaded symbols for /usr/lib/asterisk/modules/chan_iax2.so
Reading symbols from /usr/lib/asterisk/modules/chan_agent.so...done.
Loaded symbols for /usr/lib/asterisk/modules/chan_agent.so
Reading symbols from /usr/lib/asterisk/modules/chan_h323.so...done.
Loaded symbols for /usr/lib/asterisk/modules/chan_h323.so
Reading symbols from /usr/lib/libh323_linux_x86_r.so.1.19.0...done.
Loaded symbols for /usr/lib/libh323_linux_x86_r.so.1.19.0
Reading symbols from /usr/lib/libpt_linux_x86_r.so.1.11.0...done.
Loaded symbols for /usr/lib/libpt_linux_x86_r.so.1.11.0
Reading symbols from /usr/lib/libstdc++.so.6...done.
Loaded symbols for /usr/lib/libstdc++.so.6
Reading symbols from /usr/lib/libgcc_s.so.1...done.
Loaded symbols for /usr/lib/libgcc_s.so.1
Reading symbols from /usr/lib/libsasl2.so.2...done.
Loaded symbols for /usr/lib/libsasl2.so.2
http://bugs.digium.com/view.php?id=0  pthread_cancel (th=4294967295)
    at pthread_cancel.c:35
35      pthread_cancel.c: No such file or directory.
        in pthread_cancel.c
(gdb) bt
http://bugs.digium.com/view.php?id=0  pthread_cancel (th=4294967295) at
pthread_cancel.c:35
http://bugs.digium.com/view.php?id=1  0xb6d9cc81 in unload_module () from
/usr/lib/asterisk/modules/chan_h323.so
http://bugs.digium.com/view.php?id=2  0x08285f1a in ?? ()
http://bugs.digium.com/view.php?id=3  0xb7ef2dcc in _L_mutex_lock_165 () from
/lib/libpthread.so.0
http://bugs.digium.com/view.php?id=4  0xb6daf79c in ?? () from
/usr/lib/asterisk/modules/chan_h323.so
http://bugs.digium.com/view.php?id=5  0x08284718 in ?? ()
http://bugs.digium.com/view.php?id=6  0x08285f1a in ?? ()
http://bugs.digium.com/view.php?id=7  0x082841b0 in ?? ()
http://bugs.digium.com/view.php?id=8  0xffffffff in ?? ()
http://bugs.digium.com/view.php?id=9  0x0805c04e in ast_unload_resource ()
http://bugs.digium.com/view.php?id=10 0x08285f1a in ?? ()
http://bugs.digium.com/view.php?id=11 0xb79e0ae0 in ?? ()
http://bugs.digium.com/view.php?id=12 0x080962f1 in ast_cli ()
http://bugs.digium.com/view.php?id=13 0x08285f10 in ?? ()
http://bugs.digium.com/view.php?id=14 0xb7e2d800 in __malloc_initialize_hook ()
from /lib/libc.so.6
http://bugs.digium.com/view.php?id=15 0x00000002 in ?? ()
http://bugs.digium.com/view.php?id=16 0x00000003 in ?? ()
http://bugs.digium.com/view.php?id=17 0x00000001 in ?? ()
http://bugs.digium.com/view.php?id=18 0xb79e0ae0 in ?? ()
http://bugs.digium.com/view.php?id=19 0x0809477c in ast_cli ()
http://bugs.digium.com/view.php?id=20 0x00000001 in ?? ()
http://bugs.digium.com/view.php?id=21 0x00000000 in ?? () 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2008-08-28 00:08 Matti          Note Added: 0091848                          
======================================================================




More information about the asterisk-bugs mailing list