[Home]

Summary:ASTERISK-24660: Crash during AMI Originate with DEBUG_THREADS enabled
Reporter:Mason Chase (moontius)Labels:
Date Opened:2015-01-04 09:29:17.000-0600Date Closed:2015-02-10 21:20:12.000-0600
Priority:MajorRegression?
Status:Closed/CompleteComponents:General
Versions:11.15.0 Frequency of
Occurrence
Occasional
Related
Issues:
Environment:CentOS 64bit 6.5Attachments:( 0) backtrace.txt
Description:Asterisk was being called through AMI to do an originate on channel:

{code}
Core was generated by `/usr/sbin/asterisk -f -vvvg -c'.
Program terminated with signal 11, Segmentation fault.
#0  0x00007f088b72b3a0 in pthread_mutex_lock () from /lib64/libpthread.so.0
Missing separate debuginfos, use: debuginfo-install cyrus-sasl-lib-2.1.23-15.el6_6.1.x86_64 glibc-2.12-1.149.el6.x86_64 gsm-1.0.13-4.el6.x86_64 keyutils-libs-1.4-5.el6.x86_64 krb5-libs-1.10.3-33.el6.x86_64 libcom_err-1.41.12-21.el6.x86_64 libcurl-7.19.7-40.el6_6.3.x86_64 libgcc-4.4.7-11.el6.x86_64 libidn-1.18-2.el6.x86_64 libogg-1.1.4-2.1.el6.x86_64 libselinux-2.0.94-5.8.el6.x86_64 libsrtp-1.4.4-10.20101004cvs.el6.x86_64 libssh2-1.4.2-1.el6.x86_64 libstdc++-4.4.7-11.el6.x86_64 libtool-ltdl-2.2.6-15.5.el6.x86_64 libuuid-2.17.2-12.18.el6.x86_64 libvorbis-1.2.3-4.el6_2.1.x86_64 libxml2-2.7.6-17.el6_6.1.x86_64 mysql-connector-odbc-5.2.6-1.el6.x86_64 mysql-libs-5.5.41-1.el6.remi.x86_64 ncurses-libs-5.7-3.20090208.el6.x86_64 nspr-4.10.6-1.el6_5.x86_64 nss-3.16.2.3-3.el6_6.x86_64 nss-softokn-freebl-3.14.3-18.el6_6.x86_64 nss-util-3.16.2.3-2.el6_6.x86_64 openldap-2.4.39-8.el6.x86_64 openssl-1.0.1e-30.el6_6.4.x86_64 speex-1.2-0.12.rc1.1.el6.x86_64 sqlite-3.6.20-1.el6.x86_64 sqlite2-2.8.17-10.el6.x86_64 unixODBC-2.2.14-14.el6.x86_64 zlib-1.2.3-29.el6.x86_64
(gdb) bt
#0  0x00007f088b72b3a0 in pthread_mutex_lock () from /lib64/libpthread.so.0
#1  0x0000000000505148 in ast_reentrancy_lock (lt=0x5f6c656e6e616863) at /usr/src/asterisk-11.15.0/include/asterisk/lock.h:420
#2  0x0000000000505a89 in __ast_pthread_mutex_lock (filename=0x6478b4 "autoservice.c", lineno=96, func=0x647a50 "autoservice_run", mutex_name=0x6478c2 "&(&aslist)->lock", t=0x9143b0) at lock.c:218
#3  0x00000000004563bf in autoservice_run (ign=0x0) at autoservice.c:96
#4  0x000000000059d3e0 in dummy_start (data=0x7f0774030790) at utils.c:1223
#5  0x00007f088b7299d1 in start_thread () from /lib64/libpthread.so.0
#6  0x00007f088ccf69dd in clone () from /lib64/libc.so.6
(gdb)
{code}
Comments:By: Matt Jordan (mjordan) 2015-01-04 10:14:11.391-0600

Thank you for your bug report. In order to move your issue forward, we require a backtrace[1] from the core file produced after the crash. Also, be sure you have DONT_OPTIMIZE enabled in menuselect within the Compiler Flags section, then:

make install

After enabling, reproduce the crash, and then execute the backtrace[1] instructions. When complete, attach that file to this issue report.

[1] https://wiki.asterisk.org/wiki/display/AST/Getting+a+Backtrace

Please generate the backtrace using the instructions on the wiki. In particular, we'll need all of the symbols in the backtrace provided by a {{bt full}}.



By: Matt Jordan (mjordan) 2015-01-04 10:15:36.062-0600

Assuming the crash is the same, can you provide the following from {{gdb}}:

{noformat}
# frame 2
# print t
# print t->mutex
# print lt
# print *lt
{noformat}

By: Mason Chase (moontius) 2015-01-04 11:17:11.336-0600

As per your request:

{code}
(gdb) frame 2}}
#2  0x0000000000505a89 in __ast_pthread_mutex_lock (filename=0x6478b4 "autoservice.c", lineno=96, func=0x647a50 "autoservice_run", mutex_name=0x6478c2 "&(&aslist)->lock", t=0x9143b0) at lock.c:218
218                     ast_reentrancy_lock(lt);
(gdb) print t
$1 = (ast_mutex_t *) 0x9143b0
(gdb) print t->mutex
$2 = {__data = {__lock = 0, __count = 0, __owner = 0, __nusers = 0, __kind = 1, __spins = 0, __list = {__prev = 0x0, __next = 0x0}}, __size = '\000' <repeats 16 times>, "\001", '\000' <repeats 22 times>,
 __align = 0}
(gdb) print lt
$3 = (struct ast_lock_track *) 0x5f6c656e6e616863
(gdb) print *ltCannot access memory at address 0x5f6c656e6e616863

(gdb)
{code}

By: Matt Jordan (mjordan) 2015-01-12 09:50:47.570-0600

{quote}
Please generate the backtrace using the instructions on the wiki. In particular, we'll need all of the symbols in the backtrace provided by a bt full.
{quote}

Can you provide all of the symbols in the backtrace, as requested?

By: Mason Chase (moontius) 2015-01-12 12:15:06.200-0600

Should I upload the entire core files?

By: Matt Jordan (mjordan) 2015-01-13 08:13:33.757-0600

No, as the core file is specific to the machine.

If you follow the instructions on the page that was linked previously, you'll generate the correct backtrace.

By: Matt Jordan (mjordan) 2015-01-27 12:34:50.545-0600

[~moontius]: Can you provide the information requested?

By: Matt Jordan (mjordan) 2015-02-10 21:20:06.154-0600

Suspended due to lack of activity. Please request a bug marshal in #asterisk-bugs on the IRC network irc.freenode.net to reopen the issue should you have the additional information requested.  Further information can be found at http://www.asterisk.org/developers/bug-guidelines