[Home]

Summary:ASTERISK-01372: chan_alsa hangup fails.
Reporter:jcdutton (jcdutton)Labels:
Date Opened:2004-04-07 17:33:45Date Closed:2011-06-07 14:04:48
Priority:MajorRegression?No
Status:Closed/CompleteComponents:Core/General
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) hangfix.diff
( 1) hangfix.txt
Description:Asterisk hangs trying to hangup a console chan_alsa call.
E.g.
dial 600   <-Demo echo test
hangup

* fails to release the call.

****** ADDITIONAL INFORMATION ******

Trace of where the thread has hung.
ast_queue_frame (chan=0x81474a0, fin=0x426e3de8) at channel.c:375 is
ast_mutex_lock(&chan->lock);

Thread 16 (Thread 229391 (LWP 10006)):
#0  0x40046a04 in __pthread_sigsuspend (set=0x4004cb84) at ../linuxthreads/sysdeps/unix/sysv/linux/pt-sigsuspend.c:54
#1  0x40046848 in __pthread_wait_for_restart_signal (self=0x4608ebe0) at pthread.c:1214
#2  0x40047d5c in __pthread_lock (lock=0x8147588, self=0x4608ebe0) at restart.h:34
#3  0x4004501d in *__GI___pthread_mutex_lock (mutex=0x8147578) at mutex.c:112
#4  0x0805823d in ast_queue_frame (chan=0x81474a0, fin=0x426e3de8) at channel.c:375
ASTERISK-1  0x426d5b66 in sound_capture (driver=0x426e3a60) at chan_alsa.c:215
ASTERISK-2  0x426d526a in sound_thread (pvt=0x426e3a60) at chan_alsa.c:296
ASTERISK-3  0x40044031 in pthread_start_thread (arg=0x4608ebe0) at manager.c:309
ASTERISK-4  0x400441c2 in pthread_start_thread_event (arg=0x4608ebe0) at manager.c:333
ASTERISK-5  0x401df42a in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:102
Comments:By: jcdutton (jcdutton) 2004-04-07 22:43:25

[PATCH] hangfix.diff

This patch fixes the problem.
Problem was calling ast_queue_frame() while in console_hangup() or alsa_hangup() or pvt->hangup()

By: jcdutton (jcdutton) 2004-04-07 22:45:15

When appling the patch, apply it with -R.
Sorry.

By: jcdutton (jcdutton) 2004-04-14 13:28:34

Do not use this patch.