Re: [asterisk-users] segfault - asterisk crash and restart

2007-10-31 Thread Atis Lezdins
Rilawich Ango wrote:
 Hi all,
 
   Recently, I have upgraded the asterisk as following.
 asterisk-1.4.13
 asterisk-addon-1.4.4
 libpri-1.4.1
 zaptel-1.4.5.1
 Usage of the server: inbound and outbound call, queue, mixmonitor, meetme, moh
   After upgrade, the server get segfault randomly and asterisk crash
 and restart itself.  I got 2 core dumps of the segfault.  Based on the
 core dump, we can't figure out the root cause to the problem as the
 content of the core dump is not the same.  We have no idea what the
 problem is.  Anyone can give me some advices.
 
 --core dump 1--
 (gdb) bt full
 #0  0x0037e806e1f3 in _int_free () from /lib64/libc.so.6
 No symbol table info available.
 #1  0x0037e8071fac in free () from /lib64/libc.so.6
 No symbol table info available.
 #2  0x0046b7b7 in ast_frame_free (fr=0x1b9da4b0, cache=0)
 at frame.c:369
 No locals.
 #3  0x2aaab1173573 in mixmonitor_thread (obj=0x1bb08220)
from /usr/lib/asterisk/modules/app_mixmonitor.so

This is clearly mixmonitor-related. I suggest you to look for similar
mixmonitor bugs in digium's mantis - if there's none, create and attach
this backtrace.

[snip]

 --core dump 2--
 
 Core was generated by `/usr/sbin/asterisk -f -vvvg -c'.
 Program terminated with signal 11, Segmentation fault.
 #0  0x0044da80 in ast_var_name (var=0x10f1d58a0) at chanvars.c:69
 69if (name[0] == '_') {
 (gdb) bt full
 #0  0x0044da80 in ast_var_name (var=0x10f1d58a0) at chanvars.c:69
   name = 0x10f1d58b0 Address 0x10f1d58b0 out of bounds
 #1  0x0049948f in pbx_builtin_setvar_helper (chan=0xf460320,
 name=0x2aaabf53cbf7 DIALSTATUS,
 value=0x417a0690 BUSY) at pbx.c:5825
   newvariable = (struct ast_var_t *) 0x10f1d58a0
   headp = (struct varshead *) 0xf460880
   nametail = 0x2aaabf53cbf7 DIALSTATUS
   __PRETTY_FUNCTION__ = pbx_builtin_setvar_helper

Great, this confirms that i'm not the only one having this problem. Can
you please add this to http://bugs.digium.com/view.php?id=10923

As from my knowledge - this will happen often on 1.4.13.. The safe
version i'm using is 1.4.10, but 1.4.12.1 already have this problem..

Regards,
Atis


___
--Bandwidth and Colocation Provided by http://www.api-digital.com--

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users


[asterisk-users] segfault - asterisk crash and restart

2007-10-30 Thread Rilawich Ango
Hi all,

  Recently, I have upgraded the asterisk as following.
asterisk-1.4.13
asterisk-addon-1.4.4
libpri-1.4.1
zaptel-1.4.5.1
Usage of the server: inbound and outbound call, queue, mixmonitor, meetme, moh
  After upgrade, the server get segfault randomly and asterisk crash
and restart itself.  I got 2 core dumps of the segfault.  Based on the
core dump, we can't figure out the root cause to the problem as the
content of the core dump is not the same.  We have no idea what the
problem is.  Anyone can give me some advices.

--core dump 1--
(gdb) bt full
#0  0x0037e806e1f3 in _int_free () from /lib64/libc.so.6
No symbol table info available.
#1  0x0037e8071fac in free () from /lib64/libc.so.6
No symbol table info available.
#2  0x0046b7b7 in ast_frame_free (fr=0x1b9da4b0, cache=0)
at frame.c:369
No locals.
#3  0x2aaab1173573 in mixmonitor_thread (obj=0x1bb08220)
   from /usr/lib/asterisk/modules/app_mixmonitor.so
next = (struct ast_frame *) 0x0
write = 1
mixmonitor = (struct mixmonitor *) 0x1bb08220
f = (struct ast_frame *) 0x1b9da4b0
fs = (struct ast_filestream *) 0x2aaac80f3b70
oflags = 577
ext = 0x1bb08466 wav49
errflag = 0
__PRETTY_FUNCTION__ = mixmonitor_thread
#4  0x004d4b8f in dummy_start (data=0x1b949260) at utils.c:806
__cancel_buf = {__cancel_jmp_buf = {{__cancel_jmp_buf = {0,
1063351100855877176, 0, 1094138176, 1080131584, 1094136400,
1063351100855877496, 1063351101953312135}, __mask_was_saved = 0}},
  __pad = {0x413731c0, 0x0, 0x1b8f6dd0, 0x1b8f6dd0}}
---Type return to continue, or q return to quit---
__cancel_routine = (void (*)(void *)) 0x426a2b ast_unregister_thread
__cancel_arg = (void *) 0x41373940
not_first_call = 0
ret = (void *) 0x37e8344898
a = {start_routine = 0x2aaab117330d mixmonitor_thread,
  data = 0x1bb08220,
  name = 0x1b892880 mixmonitor_threadstarted at [  301]
app_mixmonitor.c launch_monitor_thread()}
lock_info = (struct thr_lock_info *) 0x1ba87c20
#5  0x0037e8c061b5 in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#6  0x0037e80cd36d in clone () from /lib64/libc.so.6
No symbol table info available.
#7  0x in ?? ()
No symbol table info available.
(gdb)

--core dump 2--

Core was generated by `/usr/sbin/asterisk -f -vvvg -c'.
Program terminated with signal 11, Segmentation fault.
#0  0x0044da80 in ast_var_name (var=0x10f1d58a0) at chanvars.c:69
69  if (name[0] == '_') {
(gdb) bt full
#0  0x0044da80 in ast_var_name (var=0x10f1d58a0) at chanvars.c:69
name = 0x10f1d58b0 Address 0x10f1d58b0 out of bounds
#1  0x0049948f in pbx_builtin_setvar_helper (chan=0xf460320,
name=0x2aaabf53cbf7 DIALSTATUS,
value=0x417a0690 BUSY) at pbx.c:5825
newvariable = (struct ast_var_t *) 0x10f1d58a0
headp = (struct varshead *) 0xf460880
nametail = 0x2aaabf53cbf7 DIALSTATUS
__PRETTY_FUNCTION__ = pbx_builtin_setvar_helper
#2  0x2aaabf53938e in dial_exec_full (chan=0xf460320,
data=0x417a2e50, peerflags=0x417a0c50, continue_exec=0x0)
   from /usr/lib/asterisk/modules/app_dial.so
res = 0
u = (struct ast_module_user *) 0xf0e48d0
rest = 0x0
cur = 0x0
outgoing = (struct dial_localuser *) 0xf13eba0
peer = (struct ast_channel *) 0x0
to = 0
numbusy = 0
numcongestion = 0
numnochan = 0
cause = 0
numsubst = [EMAIL PROTECTED]@
\017\000\000\000\000\000\000\000\000¸@ \017\000\000\000\000¸@
\017\000\000\000\000`t4è7, '\0' repeats 11 times,
À\fzA\000\000\000\000\000\fzA\000\000\000\0006\000\000\000\000\000\000\000\000Àªªª*\000\0006,
'\0' repeats 15 times,
[EMAIL PROTECTED]@[EMAIL PROTECTED]...
cidname = '\0' repeats 79 times
privdb_val = 0
calldurationlimit = 0
timelimit = 180
play_warning = 12
warning_freq = 0
warning_sound = 0x2aaabf53cd0a timeleft
end_sound = 0x0
start_sound = 0x0
dtmfcalled = 0x0
dtmfcalling = 0x0
status = BUSY\000WER\000GS, '\0' repeats 244 times
play_to_caller = 1
play_to_callee = 0
sentringing = 0
moh = 0
outbound_group = 0x0
result = 0
start_time = 1193798657
privintro = [EMAIL PROTECTED]
\---Type return to continue, or q return to quit---
004zA\000\000\000\000À\vzA\000\000\000\000\230LR\000\000\000\000\000P\tzA,
'\0' repeats 12 times,  , '\0' repeats 23 times,
\000\000\000\000Á\000\000\000ªLR, '\0' repeats 13 times,
\b\bzA\000\000\000\000\230ùR\000\006, '\0' repeats 15 times, \n,
'\0' repeats 43 times, 
\vzA\000\000\000\000\203ùR\000\000\000\000\000...
privcid = p\nzA\000\000\000\000`pRd\000\000\000\000\000\bzA, '\0'
repeats 36 times, \003ñ\027´\\000\000\000mpR, '\0'
repeats 13 times,