[Home]

Summary:ASTERISK-11275: Crash. bridged->chan is null
Reporter:Badalian Vyacheslav (slavon)Labels:
Date Opened:2008-01-21 23:40:24.000-0600Date Closed:2008-01-29 17:37:50.000-0600
Priority:CriticalRegression?No
Status:Closed/CompleteComponents:Applications/app_mixmonitor
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:Hello. Crash then queue member pickup call. Allways!

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

Core was generated by `asterisk -gT'.
Program terminated with signal 11, Segmentation fault.
#0  0x0809000b in ast_bridged_channel (chan=0x0) at channel.c:3627
3627            bridged = chan->_bridge;
(gdb) bt
#0  0x0809000b in ast_bridged_channel (chan=0x0) at channel.c:3627
#1  0xb6bc380f in mixmonitor_thread (obj=0x836e248) at app_mixmonitor.c:169
#2  0x0811823c in dummy_start (data=0x83638d8) at utils.c:852
#3  0xb7f1816b in start_thread () from /lib/libpthread.so.0
#4  0xb7387b8e in clone () from /lib/libc.so.6
(gdb) bt full
#0  0x0809000b in ast_bridged_channel (chan=0x0) at channel.c:3627
       bridged = (struct ast_channel *) 0x81f9570
#1  0xb6bc380f in mixmonitor_thread (obj=0x836e248) at app_mixmonitor.c:169
       fr = (struct ast_frame *) 0x83877d0
       mixmonitor = (struct mixmonitor *) 0x836e248
       fs = (struct ast_filestream *) 0x0
       oflags = 3059192716
       ext = 0x51 <Address 0x51 out of bounds>
       errflag = 0
       __PRETTY_FUNCTION__ = "mixmonitor_thread"
#2  0x0811823c in dummy_start (data=0x83638d8) at utils.c:852
       __cancel_buf = {__cancel_jmp_buf = {{__cancel_jmp_buf = {-1208844300, 0, -1235772528, -1235774536, 1490745357, -721547919}, __mask_was_saved = 0}}, __pad = {0xb6579470, 0x0, 0xb73f6120,
   0xb73f4e78}}
       __cancel_routine = (void (*)(void *)) 0x806c98d <ast_unregister_thread>
       __cancel_arg = (void *) 0xb6579b90
       not_first_call = 0
       ret = (void *) 0xb73f325c
       a = {start_routine = 0xb6bc3703 <mixmonitor_thread>, data = 0x836e248, name = 0x8381080 "mixmonitor_thread    started at [  285] app_mixmonitor.c launch_monitor_thread()"}
       lock_info = (struct thr_lock_info *) 0x840a280
       mutex_attr = {__size = "\001\000\000", __align = 1}
#3  0xb7f1816b in start_thread () from /lib/libpthread.so.0
No symbol table info available.
#4  0xb7387b8e in clone () from /lib/libc.so.6
No symbol table info available.
(gdb) list
3622
3623    /*! \brief Find bridged channel */
3624    struct ast_channel *ast_bridged_channel(struct ast_channel *chan)
3625    {
3626            struct ast_channel *bridged;
3627            bridged = chan->_bridge;
3628            if (bridged && bridged->tech->bridged_channel)
3629                    bridged = bridged->tech->bridged_channel(chan, bridged);
3630            return bridged;
3631    }
(gdb) p chan
$1 = (struct ast_channel *) 0x0
(gdb) f 1
#1  0xb6bc380f in mixmonitor_thread (obj=0x836e248) at app_mixmonitor.c:169
169                     if (!ast_test_flag(mixmonitor, MUXFLAG_BRIDGED) || ast_bridged_channel(mixmonitor->chan)) {
(gdb) list
164                             break;
165
166                     if (!(fr = ast_audiohook_read_frame(&mixmonitor->audiohook, SAMPLES_PER_FRAME, AST_AUDIOHOOK_DIRECTION_BOTH, AST_FORMAT_SLINEAR)))
167                             continue;
168
169                     if (!ast_test_flag(mixmonitor, MUXFLAG_BRIDGED) || ast_bridged_channel(mixmonitor->chan)) {
170                             /* Initialize the file if not already done so */
171                             if (!fs && !errflag) {
172                                     oflags = O_CREAT | O_WRONLY;
173                                     oflags |= ast_test_flag(mixmonitor, MUXFLAG_APPEND) ? O_APPEND : O_TRUNC;
(gdb) p mixmonitor
$2 = (struct mixmonitor *) 0x836e248
(gdb) p mixmonitor->chan
$3 = (struct ast_channel *) 0x0
(gdb) quit
Comments:By: Holger Hornung (netview) 2008-01-22 06:31:34.000-0600

I can confirm this.

By: Digium Subversion (svnbot) 2008-01-29 11:54:15.000-0600

Repository: asterisk
Revision: 100934

U   branches/1.4/apps/app_mixmonitor.c

------------------------------------------------------------------------
r100934 | file | 2008-01-29 11:54:14 -0600 (Tue, 29 Jan 2008) | 4 lines

Don't forget to record the channel so we know whether it is bridged or not later.
(closes issue ASTERISK-11275)
Reported by: slavon

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=100934

By: Digium Subversion (svnbot) 2008-01-29 11:55:47.000-0600

Repository: asterisk
Revision: 100935

_U  trunk/

------------------------------------------------------------------------
r100935 | file | 2008-01-29 11:55:46 -0600 (Tue, 29 Jan 2008) | 11 lines

Blocked revisions 100934 via svnmerge

........
r100934 | file | 2008-01-29 13:57:05 -0400 (Tue, 29 Jan 2008) | 4 lines

Don't forget to record the channel so we know whether it is bridged or not later.
(closes issue ASTERISK-11275)
Reported by: slavon

........

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=100935

By: Digium Subversion (svnbot) 2008-01-29 17:37:50.000-0600

Repository: asterisk
Revision: 101077

_U  team/murf/bug11210/
U   team/murf/bug11210/Makefile
U   team/murf/bug11210/apps/app_queue.c
U   team/murf/bug11210/channels/chan_misdn.c
U   team/murf/bug11210/channels/chan_sip.c
U   team/murf/bug11210/channels/chan_zap.c
U   team/murf/bug11210/channels/misdn_config.c
U   team/murf/bug11210/main/Makefile
U   team/murf/bug11210/res/res_config_curl.c

------------------------------------------------------------------------
r101077 | murf | 2008-01-29 17:37:49 -0600 (Tue, 29 Jan 2008) | 190 lines

Merged revisions 100741,100767,100794-100795,100833,100843,100900,100928,100931,100933,100935,100974,101018,101036 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r100741 | oej | 2008-01-29 01:28:43 -0700 (Tue, 29 Jan 2008) | 3 lines

Removing code that wasn't supposed to be there at all, only at an experimental stage
before I found another solution. Thanks Kevin, for reminding me.

................
r100767 | oej | 2008-01-29 02:18:42 -0700 (Tue, 29 Jan 2008) | 16 lines

Merged revisions 100740 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r100740 | oej | 2008-01-29 09:26:48 +0100 (Tis, 29 Jan 2008) | 8 lines

(closes issue ASTERISK-11205)
Reported by: MVF
Patches:
     bug11736-2.diff uploaded by oej (license 306)
Tested by: oej, MVF, revolution

(russellb: This was the showstopper for the release.)

........

................
r100794 | crichter | 2008-01-29 03:47:06 -0700 (Tue, 29 Jan 2008) | 9 lines

Merged revisions 96199 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r96199 | crichter | 2008-01-03 13:12:27 +0100 (Do, 03 Jan 2008) | 1 line

make sure frame is completely clean, before we send it to asterisk as DTMF. If we don't make it clean, it happens that one way audio occurs..
........

................
r100795 | crichter | 2008-01-29 03:50:29 -0700 (Tue, 29 Jan 2008) | 9 lines

Merged revisions 100793 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r100793 | crichter | 2008-01-29 11:36:19 +0100 (Di, 29 Jan 2008) | 1 line

fixed potential segfault in misdn show channels CLI command
........

................
r100833 | file | 2008-01-29 08:30:19 -0700 (Tue, 29 Jan 2008) | 4 lines

Make externip work as documented. If no port is specified it will use the value of bindport instead of always being 5060.
(closes issue ASTERISK-11317)
Reported by: hmodes

................
r100843 | qwell | 2008-01-29 09:14:08 -0700 (Tue, 29 Jan 2008) | 13 lines

Merged revisions 100835 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r100835 | qwell | 2008-01-29 10:10:00 -0600 (Tue, 29 Jan 2008) | 5 lines

Allow zap groups above 30 to work properly.

(closes issue ASTERISK-11074)
Reported by: tbsky

........

................
r100900 | russell | 2008-01-29 10:16:34 -0700 (Tue, 29 Jan 2008) | 14 lines

Merged revisions 100882 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r100882 | russell | 2008-01-29 11:06:43 -0600 (Tue, 29 Jan 2008) | 6 lines

Fix building Asterisk when the working path has spaces in it.

(closes issue ASTERISK-11295)
Reported by: spendergrass
Patched by: me

........

................
r100928 | russell | 2008-01-29 10:22:47 -0700 (Tue, 29 Jan 2008) | 11 lines

Merged revisions 100922 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r100922 | russell | 2008-01-29 11:21:33 -0600 (Tue, 29 Jan 2008) | 3 lines

Use GNU make magic instead of shell magic to escape spaces in the working directory.
(related to issue ASTERISK-11295)

........

................
r100931 | qwell | 2008-01-29 10:42:48 -0700 (Tue, 29 Jan 2008) | 14 lines

Merged revisions 100930 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r100930 | qwell | 2008-01-29 11:41:43 -0600 (Tue, 29 Jan 2008) | 6 lines

Initialize an array to 0s if config option not specified.

(closes issue ASTERISK-11319)
Patches:
     misdn_get_config.v1.diff uploaded by IgorG (license 20)

........

................
r100933 | russell | 2008-01-29 10:44:05 -0700 (Tue, 29 Jan 2008) | 12 lines

Merged revisions 100932 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r100932 | russell | 2008-01-29 11:43:41 -0600 (Tue, 29 Jan 2008) | 4 lines

Fix the last couple of issues related to building from a path that contains spaces.

(closes issue ASTERISK-11295)

........

................
r100935 | file | 2008-01-29 10:58:37 -0700 (Tue, 29 Jan 2008) | 11 lines

Blocked revisions 100934 via svnmerge

........
r100934 | file | 2008-01-29 13:57:05 -0400 (Tue, 29 Jan 2008) | 4 lines

Don't forget to record the channel so we know whether it is bridged or not later.
(closes issue ASTERISK-11275)
Reported by: slavon

........

................
r100974 | mmichelson | 2008-01-29 12:41:42 -0700 (Tue, 29 Jan 2008) | 14 lines

Merged revisions 100973 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r100973 | mmichelson | 2008-01-29 13:39:00 -0600 (Tue, 29 Jan 2008) | 6 lines

Fixing an erroneous return value returned when attempting to pause or unpause a queue member
fails.

Fixes BE-366, thanks to John Bigelow for writing the patch.


........

................
r101018 | tilghman | 2008-01-29 15:04:15 -0700 (Tue, 29 Jan 2008) | 2 lines

Oops, a sizeof error

................
r101036 | mmichelson | 2008-01-29 16:02:48 -0700 (Tue, 29 Jan 2008) | 11 lines

Merged revisions 101035 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r101035 | mmichelson | 2008-01-29 17:02:03 -0600 (Tue, 29 Jan 2008) | 3 lines

Remove a memory leak from updating realtime queues


........

................

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=101077