[Home]

Summary:ASTERISK-12713: Call from a Polycom, trough Asterisk, to a Local/ + DAHDI analog channel. Hangup DAHDI and crash.
Reporter:Alexandre Bourget (wackysalut)Labels:
Date Opened:2008-09-11 10:59:18Date Closed:2011-06-07 14:07:45
Priority:MinorRegression?No
Status:Closed/CompleteComponents:Channels/chan_dahdi
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:Analog card: Digium TDM411B
Asterisk: 1.6.0-rc4

Backtrace + snippet of CLI:


[New Thread -1216644208 (LWP 8751)]
   -- Executing [6004@users-international:1] Macro("SIP/polycom-0935ea48", "stdexten,Local/604@inside") in new stack
   -- Executing [s@macro-stdexten:1] Dial("SIP/polycom-0935ea48", "Local/604@inside,25") in new stack
[New Thread -1216889968 (LWP 8752)]
   -- Called 604@inside
   -- Executing [604@inside:1] Dial("Local/604@inside-32d7;2", "DAHDI/g2,20") in new stack
[Sep 11 11:10:24] WARNING[8752]: chan_dahdi.c:2129 dahdi_call: cidspill already exists??
   -- Called g2
   -- DAHDI/25-1 is ringing
   -- Local/604@inside-32d7;1 is ringing
   -- DAHDI/25-1 answered Local/604@inside-32d7;2
   -- Local/604@inside-32d7;1 answered SIP/polycom-0935ea48
 == Spawn extension (inside, 604, 1) exited non-zero on 'Local/604@inside-32d7;2'
[Thread -1216889968 (LWP 8752) exited]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1216644208 (LWP 8751)]
ast_cdr_specialized_reset (cdr=0x936dd80, _flags=0x0) at cdr.c:680
680                     if (!ast_test_flag(cdr, AST_CDR_FLAG_LOCKED)) {
(gdb) bt
#0  ast_cdr_specialized_reset (cdr=0x936dd80, _flags=0x0) at cdr.c:680
#1  0x080ad774 in ast_bridge_call (chan=0x936d128, peer=0x936d988, config=0xb77adcf0) at features.c:2170
#2  0x00f39d11 in dial_exec_full (chan=0x936d128, data=0xb77afe78, peerflags=0xb77addd0, continue_exec=0x0)
   at app_dial.c:1894
#3  0x00f3f159 in dial_exec (chan=0x936d128, data=0xb77afe78) at app_dial.c:1964
#4  0x080e17e4 in pbx_exec (c=0x936d128, app=0x92fbe38, data=0xb77afe78) at pbx.c:944
ASTERISK-1  0x080ed39d in pbx_extension_helper (c=0x936d128, con=0x0, context=0x936d2b0 "macro-stdexten",
   exten=0x936d300 "s", priority=1, label=0x0, callerid=0x9346d58 "603", action=E_SPAWN, found=0xb77b2e34,
   combined_find_spawn=1) at pbx.c:3113
ASTERISK-2  0x0061d198 in _macro_exec (chan=0x936d128, data=<value optimized out>, exclusive=0) at app_macro.c:295
ASTERISK-3  0x080e17e4 in pbx_exec (c=0x936d128, app=0x92d22c0, data=0xb77b4ef8) at pbx.c:944
ASTERISK-4  0x080ed39d in pbx_extension_helper (c=0x936d128, con=0x0, context=0x936d2b0 "macro-stdexten",
   exten=0x936d300 "s", priority=1, label=0x0, callerid=0x9346d58 "603", action=E_SPAWN, found=0xb77b7338,
   combined_find_spawn=1) at pbx.c:3113
ASTERISK-5  0x080ef976 in __ast_pbx_run (c=0x936d128) at pbx.c:3604
ASTERISK-6 0x080f11be in pbx_thread (data=0x936d128) at pbx.c:3954
ASTERISK-7 0x0812b2eb in dummy_start (data=0x9342a00) at utils.c:917
ASTERISK-8 0x00afe46b in start_thread () from /lib/libpthread.so.0
ASTERISK-9 0x00a55dbe in clone () from /lib/libc.so.6


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

hmmm.. ?
Comments:By: Alexandre Bourget (wackysalut) 2008-09-11 11:03:19

Here is part of the dialplan:

[inside]

exten => 6004,1,Macro(stdexten,Local/604@inside)

exten => 604,1,Dial(DAHDI/g2,20)


When calling 6004, it crashes.
When calling 604 it doesn't.

If I add a /n to the Local/604@inside thing, it prevents the crash.

Hope this helps.

By: Alexandre Bourget (wackysalut) 2008-09-11 11:06:20

Forgot that macro (which may be the problem, with the CUT and the @inside thing..):

[macro-stdexten]
exten => s,1,Dial(${ARG1},25)
exten => s,n,VoiceMail(${CUT(${ARG1},'/',2)},u)

By: Alexandre Bourget (wackysalut) 2008-09-11 13:07:24

Here is another crash:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1216722032 (LWP 9952)]
ast_cdr_specialized_reset (cdr=0x8b2c338, _flags=0x0) at cdr.c:680
680                     if (!ast_test_flag(cdr, AST_CDR_FLAG_LOCKED)) {
(gdb) bt
#0  ast_cdr_specialized_reset (cdr=0x8b2c338, _flags=0x0) at cdr.c:680
#1  0x080ad774 in ast_bridge_call (chan=0x8b2b6e0, peer=0x8b2bf40, config=0xb779fd70) at features.c:2170
#2  0x00dded11 in dial_exec_full (chan=0x8b2b6e0, data=0xb77a1ef8, peerflags=0xb779fe50, continue_exec=0x0)
   at app_dial.c:1894
#3  0x00de4159 in dial_exec (chan=0x8b2b6e0, data=0xb77a1ef8) at app_dial.c:1964
#4  0x080e17e4 in pbx_exec (c=0x8b2b6e0, app=0x8ab5570, data=0xb77a1ef8) at pbx.c:944
ASTERISK-1  0x080ed39d in pbx_extension_helper (c=0x8b2b6e0, con=0x0, context=0x8b2b868 "test", exten=0x8b2b8b8 "s",
   priority=2, label=0x0, callerid=0x8afbf60 "603", action=E_SPAWN, found=0xb77a4338, combined_find_spawn=1)
   at pbx.c:3113
ASTERISK-2  0x080ef976 in __ast_pbx_run (c=0x8b2b6e0) at pbx.c:3604
ASTERISK-3  0x080f11be in pbx_thread (data=0x8b2b6e0) at pbx.c:3954
ASTERISK-4  0x0812b2eb in dummy_start (data=0x8afbd30) at utils.c:917
ASTERISK-5  0x00afe46b in start_thread () from /lib/libpthread.so.0
ASTERISK-6 0x00a55dbe in clone () from /lib/libc.so.6
(gdb)


btw, for Digium developers, I'm in the training class (at Digium, Huntsville) until friday (12th sept '08).

By: Alexandre Bourget (wackysalut) 2008-09-11 13:23:07

Fixed, when upgrading to Asterisk 1.6.0-rc6 . Had upgraded to dahdi-linux-rc4 but hadn't upgraded Asterisk.

Probably there was something between the two that required a simultaneous upgrade.

- fixed -

By: Sean Bright (seanbright) 2008-09-11 14:11:08

Closed per reporter's request.