[Home]

Summary:ASTERISK-07729: Asterisk crashes with IAX2
Reporter:sorg (sorg)Labels:
Date Opened:2006-09-12 11:05:02Date Closed:2006-09-28 12:34:15
Priority:CriticalRegression?No
Status:Closed/CompleteComponents:Core/General
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) bt.txt
( 1) bt1.txt
Description:Loaded symbols for /usr/lib/libpri.so.1.0
#0  0x0000002a9f80d4c1 in socket_process (thread=Variable "thread" is not available.
) at chan_iax2.c:6967
6967                                                            ast_log(LOG_DEBUG, "Async goto of '%s' to '%s@%s' started\n", ast_bridged_channel(iaxs[fr->callno]->owner)->name,
(gdb) bt
#0  0x0000002a9f80d4c1 in socket_process (thread=Variable "thread" is not available.
) at chan_iax2.c:6967
#1  0x0000002a9f80ff7d in iax2_process_thread (data=Variable "data" is not available.
) at chan_iax2.c:7623
#2  0x000000000049b2de in dummy_start (data=Variable "data" is not available.
) at utils.c:538
#3  0x0000003c4a00610a in start_thread () from /lib64/tls/libpthread.so.0
#4  0x0000003c499c68c3 in clone () from /lib64/tls/libc.so.6
ASTERISK-1  0x0000000000000000 in ?? ()
(gdb) bt full
#0  0x0000002a9f80d4c1 in socket_process (thread=Variable "thread" is not available.
) at chan_iax2.c:6967
       sin = {sin_family = 2, sin_port = 36858, sin_addr = {
   s_addr = 35678809}, sin_zero = "\000\000\000\000\000\000\000"}
       res = 18
       updatehistory = 0
       new = 0
       ptr = Variable "ptr" is not available.
(gdb) quit


Loaded symbols for /usr/lib/libpri.so.1.0
#0  0x0000002a9f80cee2 in socket_process (thread=Variable "thread" is not available.
) at chan_iax2.c:7568
7568            if (iaxs[fr->callno]->last < fr->ts) {
(gdb) bt
#0  0x0000002a9f80cee2 in socket_process (thread=Variable "thread" is not available.
) at chan_iax2.c:7568
#1  0x0000002a9f815f7d in iax2_process_thread (data=Variable "data" is not available.
) at chan_iax2.c:7623
#2  0x000000000049b2de in dummy_start (data=Variable "data" is not available.
) at utils.c:538
#3  0x0000003c4a00610a in start_thread () from /lib64/tls/libpthread.so.0
#4  0x0000003c499c68c3 in clone () from /lib64/tls/libc.so.6
ASTERISK-1  0x0000000000000000 in ?? ()
(gdb) bt full
#0  0x0000002a9f80cee2 in socket_process (thread=Variable "thread" is not available.
) at chan_iax2.c:7568
       callno = Variable "callno" is not available.
(gdb) quit
Comments:By: Serge Vecher (serge-v) 2006-09-13 11:06:13

is this bt from Asterisk compiled with "DONT OPTIMIZE" flag enabled in menuconfig?

By: sorg (sorg) 2006-09-13 11:19:41

No, Asterisk compiled without DONT OPTIMIZE.
This bug most likely originate with empty (or not defined) "callerid" in users
section iax.conf

By: Serge Vecher (serge-v) 2006-09-13 12:35:29

ok, you need to recompile then, and produce a new backtrace, as per bug guidelines. Thanks.

By: sorg (sorg) 2006-09-14 12:35:10

Please see uploaded logs

Thanks



By: Tilghman Lesher (tilghman) 2006-09-16 09:07:26

I need the gdb output of:

p *fr
p *(iaxs[fr->callno])

By: sorg (sorg) 2006-09-16 12:48:14

(gdb) p *fr
$1 = {sockfd = 0, callno = 2, dcallno = 0, data = 0x0, datalen = 0,
 retries = 0, ts = 41700, retrytime = 0, outoforder = 0, sentyet = 0,
 oseqno = 16, iseqno = 21, transfer = 0, final = 0, direction = 0,
 retrans = 0, list = {next = 0x0}, af = {frametype = AST_FRAME_VOICE,
   subclass = 8, datalen = 160, samples = 160, mallocd = 0,
   mallocd_hdr_len = 0, offset = 64, src = 0x2a9f847612 "IAX2",
   data = 0x4044dfb0, delivery = {tv_sec = 0, tv_usec = 0}, frame_list = {
     next = 0x0}, has_timing_info = 0, ts = 0, len = 0, seqno = 0},
 mallocd_datalen = 0, unused = '\0' <repeats 63 times>,
 afdata = 0x4044dfb0 "&ASTERISK-1093;&ASTERISK-1092;&ASTERISK-1091;&ASTERISK-1092;&ASTERISK-1089;&ASTERISK-1082;&ASTERISK-1091;&ASTERISK-1082;&ASTERISK-1082;&ASTERISK-1081;&ASTERISK-1081;&ASTERISK-1091;&ASTERISK-1091;&ASTERISK-1095;&ASTERISK-1092;&ASTERISK-1092;&ASTERISK-1089;&ASTERISK-1093;&ASTERISK-1095;&ASTERISK-1095;&ASTERISK-1095;&ASTERISK-1095;&ASTERISK-1095;&ASTERISK-1092;&ASTERISK-1091;&ASTERISK-1082;&ASTERISK-1083;&ASTERISK-1083;&ASTERISK-1091;&ASTERISK-1082;&ASTERISK-1082;&ASTERISK-1083;&ASTERISK-1072;&ASTERISK-1097;&ASTERISK-1097;&ASTERISK-1081;&ASTERISK-1081;&ASTERISK-1081;&ASTERISK-1091;&ASTERISK-1083;&ASTERISK-1083;&ASTERISK-1081;&ASTERISK-1068;&ASTERISK-1072;&ASTERISK-1081;&ASTERISK-1072;&ASTERISK-1097;&ASTERISK-1082;&ASTERISK-1083;&ASTERISK-1081;&ASTERISK-1083;&ASTERISK-1072;&ASTERISK-1085;U&ASTERISK-1084;&ASTERISK-1085;&ASTERISK-1084;&ASTERISK-1072;&ASTERISK-1072;&ASTERISK-1068;&ASTERISK-1097;&ASTERISK-1072;&ASTERISK-1084;&ASTERISK-1084;&ASTERISK-1085;&ASTERISK-1072;&ASTERISK-1068;&ASTERISK-1084;&ASTERISK-1097;&ASTERISK-1081;&ASTERISK-1084;&ASTERISK-1084;&ASTERISK-1068;&ASTERISK-1084;&ASTERISK-1068;&ASTERISK-1072;&ASTERISK-1068;&ASTERISK-1068;UUU&ASTERISK-1085;&ASTERISK-1084;UW&ASTERISK-1084;&ASTERISK-1068;&ASTERISK-1085;&ASTERISK-1084;&ASTERISK-1085;&ASTERISK-1085;&ASTERISK-1085;&ASTERISK-1097;&ASTERISK-1072;&ASTERISK-1068;&ASTERISK-1084;&ASTERISK-1084;&ASTERISK-1084;&ASTERISK-1068;&ASTERISK-1097;&ASTERISK-1081;&ASTERISK-1083;&ASTERISK-1081;&ASTERISK-1081;&ASTERISK-1081;&ASTERISK-1068;&ASTERISK-1068;&ASTERISK-1072;&ASTERISK-1097;&ASTERISK-1097;&ASTERISK-1083;&ASTERISK-1082;&ASTERISK-1083;&ASTERISK-1083;&ASTERISK-1082;&ASTERISK-1081;&ASTERISK-1081;&ASTERISK-1081;&ASTERISK-1097;&ASTERISK-1081;&ASTERISK-1082;&ASTERISK-1091;&ASTERISK-1091;&ASTERISK-1095;&ASTERISK-1091;&ASTERISK-1083;&ASTERISK-1083;&ASTERISK-1083;&ASTERISK-1091;&ASTERISK-1083;&ASTERISK-1097;&ASTERISK-1081;&ASTERISK-1091;&ASTERISK-1091;&ASTERISK-1095;&ASTERISK-1095;&ASTERISK-1092;&ASTERISK-1082;&ASTERISK-1082;&ASTERISK-1092;&ASTERISK-1082;&ASTERISK-1091;&ASTERISK-1092;&ASTERISK-1091;&ASTERISK-1082;&ASTERISK-1091;&ASTERISK-1092;&ASTERISK-1091;&ASTERISK-1083;&ASTERISK-1082;&ASTERISK-1082;&ASTERISK-1081;&ASTERISK-1097;&ASTERISK-1097;&ASTERISK-1082;&ASTERISK-1095;&ASTERISK-1091;&ASTERISK-1091;&ASTERISK-1082;&ASTERISK-1081;"}
(gdb) p *(iaxs[fr->callno])
Cannot access memory at address 0x0
(gdb)

By: Joshua C. Colp (jcolp) 2006-09-26 17:40:07

Would it be possible to gain access to a box where this is happening? Thanks.

By: Joshua C. Colp (jcolp) 2006-09-27 12:06:18

Please try the latest revision of the 1.4 branch or wait for the next 1.4 beta release, a change I put in at revision 43783 may have fixed this.

By: Joshua C. Colp (jcolp) 2006-09-27 12:06:46

Oops, give trunk a try - I merged it in at revision 43792 ;)

By: Joshua C. Colp (jcolp) 2006-09-28 12:34:14

Fixed in 1.4 as of revision 43915 and trunk as of revision 43917. Thanks!