[Home]

Summary:ASTERISK-01630: coredump when bridging chan h323 to iax2
Reporter:zoa (zoa)Labels:
Date Opened:2004-05-15 11:13:20Date Closed:2004-09-25 02:46:01
Priority:CriticalRegression?No
Status:Closed/CompleteComponents:Core/General
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:tested with todays cvs, i did around 25 simultaneous calls, and then i had this coredump.

don't know if the problem would be in chan_h323.




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

Loaded symbols for /usr/lib/asterisk/modules/app_groupcount.so
#0  0x080817c4 in ast_rtp_read (rtp=0x0) at rtp.c:408
408             res = recvfrom(rtp->s, rtp->rawdata + AST_FRIENDLY_OFFSET, sizeof(rtp->rawdata) - AST_FRIENDLY_OFFSET,
(gdb)
(gdb)
(gdb) bt full
#0  0x080817c4 in ast_rtp_read (rtp=0x0) at rtp.c:408
       rtp = (struct ast_rtp *) 0x0
       res = 242
       sin = {sin_family = 22048, sin_port = 16756, sin_addr = {
   s_addr = 1073895046}, sin_zero = "àê\002@ VtA"}
       len = 16
       seqno = 1098143264
       payloadtype = 1098143264
       mark = 134578613
       timestamp = 4294967295
       f = (struct ast_frame *) 0x0
       null_frame = {frametype = 5, subclass = 0, datalen = 0, samples = 0,
 mallocd = 0, offset = 0, src = 0x0, data = 0x0, delivery = {tv_sec = 0,
   tv_usec = 0}, prev = 0x0, next = 0x0}
       rtpPT = {isAstFormat = 120, code = 1}
#1  0x406c4b87 in oh323_rtp_read (p=0x41745620) at chan_h323.c:525
       p = (struct oh323_pvt *) 0x41745620
       f = (struct ast_frame *) 0x41745620
       null_frame = {frametype = 5, subclass = 0, datalen = 0, samples = 0,
 mallocd = 0, offset = 0, src = 0x0, data = 0x0, delivery = {tv_sec = 0,
   tv_usec = 0}, prev = 0x0, next = 0x0}
#2  0x406c74d9 in oh323_read (c=0x417be1a8) at chan_h323.c:558
       c = (struct ast_channel *) 0x78
---Type <return> to continue, or q <return> to quit---
       fr = (struct ast_frame *) 0x417be1a8
       p = (struct oh323_pvt *) 0x41745620
#3  0x08058c0b in ast_read (chan=0x417be1a8) at channel.c:1214
       chan = (struct ast_channel *) 0x417be1a8
       f = (struct ast_frame *) 0x0
       blah = -1226839496
       func = (int (*)()) 0x417be1a8
       data = (void *) 0xb6dfea44
       res = 120
       null_frame = {frametype = 5, subclass = 0, datalen = 0, samples = 0,
 mallocd = 0, offset = 0, src = 0x0, data = 0x0, delivery = {tv_sec = 0,
   tv_usec = 0}, prev = 0x0, next = 0x0}
#4  0x0805bc5f in ast_channel_bridge (c0=0x417be1a8, c1=0x8413f90,
   config=0xb6dff0b8, fo=0xb6dfeabc, rc=0xb6dfeac0) at channel.c:2519
       c0 = (struct ast_channel *) 0x417be1a8
       flags = 0
       cs = {0x417be1a8, 0x8413f90, 0x8413f90}
       to = -1
       f = (struct ast_frame *) 0x0
       who = (struct ast_channel *) 0x417be1a8
       res = 0
       nativefailed = 0
       start_time = {tv_sec = 1084633079, tv_usec = 45048}
---Type <return> to continue, or q <return> to quit---
       precise_now = {tv_sec = 1100020504, tv_usec = 138493840}
       time_left_ms = 138499908
       playit = 0
       playitagain = 1
       first_time = 1
ASTERISK-1  0x401d46c4 in ast_bridge_call (chan=0x417be1a8, peer=0x8413f90,
   config=0xb6dff0b8) at res_parking.c:254
       f = (struct ast_frame *) 0x4190fb18
       who = (struct ast_channel *) 0x8413f90
       newext = "\006\0\0\0Ç,h@&acute;Ji@\030ûÀA\006\0\0\0tÐ\020@\230\0wA@n\0\0\024ì߶\206V\002@àê\002@h@A\b\0\001\0\0-&h@X\016rA\b\0\0\0Dì߶÷Ñ\005\b\034\0\0\0\0ü߶Dì߶S\"\002@x@A\bh@A\b\0\001\0\0\225!\002@\220?A\bh@A\b\0\006\0\0@\0\0\0\001\0\0\0\230\0wA\204ì߶)\234\005\bh@A\b\002\0\0\0\220?A\b\225!\002@&frac14;ì߶&uml;á{A\220?A\b:\037\002@&curren;o\r\b\027\0\0\0\002\0\0\0\023\0\0\0\0\001\0\0\002\0\0\0Äì߶Ý&uml;\005\b"...
       ptr = 0x0
       res = 0
       aoh = (struct ast_option_header *) 0x0
       transferer = (struct ast_channel *) 0x0
       transferee = (struct ast_channel *) 0x0
       transferer_real_context = 0x0
       allowdisconnect = 0
       allowredirect_in = 0
       allowredirect_out = 0
---Type <return> to continue, or q <return> to quit---
ASTERISK-2  0x4052b8d3 in dial_exec (chan=0x417be1a8, data=0xb6dff7b4)
   at app_dial.c:870
       data = (void *) 0x417be1a8
       res = 0
       u = (struct localuser *) 0x849db90
       info = "IAX2\0xxx@xxx/003223514295\090", '\0' <repeats 217 times>, "\b"
       timeout = 0xb6dff4a8 "90"
       number = 0x8413f90 "IAX2[xxx]/16478"
       rest = 0x0
       cur = 0x0
       privdb = '\0' <repeats 255 times>
       s = 0x417be1a8 "H323/ip$10.0.1.123:3095/20153"
       announcemsg = '\0' <repeats 255 times>
       ann = 0x417be1a8 "H323/ip$10.0.1.123:3095/20153"
       outgoing = (struct localuser *) 0x0
       tmp = (struct localuser *) 0x849da90
       peer = (struct ast_channel *) 0x8413f90
       to = 89882
       allowredir_in = 0
       allowredir_out = 0
       allowdisconnect = 0
       privacy = 0
---Type <return> to continue, or q <return> to quit---
       announce = 0
       resetcdr = 0
       numsubst = "xxx@xxx/003223514295", '\0' <repeats 49 times>, "¶"
       restofit = '\0' <repeats 60 times>, "\224ó߶", '\0' <repeats 15 times>
       transfer = 0x0
       newnum = 0x417be1a8 "H323/ip$10.0.1.123:3095/20153"
       callerid = "\0\0\0\0\0\0\0\0\005\0\0\0\0\0\0\0\224ó߶\0\0\0\0\232ò߶éÔ\v\b\0\0\0\0\0\0\0\0=\0\0\0\224ô߶4ò߶\bÝ\006\b\224ô߶ôã{Aÿ\0\0\0\0\0\0\0\005\0\0\0\0\0\0\0\224ó߶", '\0' <repeats 28 times>, "\204ù{A", '\0' <repeats 139 times>
       l = 0x400ed8b3 "\213\205$ûÿÿ\215¥øùÿÿ[^_ÉÃU\211å\203ì\034WVSè"
       n = 0x0
       url = 0x0
       current = (struct ast_var_t *) 0x8413f90
       newvar = (struct ast_var_t *) 0x1
       go_on = 0
       calldurationlimit = 0
       cdl = 0x78 <Address 0x78 out of bounds>
       now = 1
       config = {play_to_caller = 0, play_to_callee = 0,
 allowredirect_in = 0, allowredirect_out = 0, allowdisconnect = 0,
 timelimit = 0, play_warning = 0, warning_freq = 0, warning_sound = 0x0,
 end_sound = 0x0, start_sound = 0x0}
---Type <return> to continue, or q <return> to quit---
       timelimit = 0
       play_warning = 0
       warning_freq = 0
       warning_sound = 0x0
       end_sound = 0x0
       start_sound = 0x0
       limitptr = 0x417be1a8 "H323/ip$10.0.1.123:3095/20153"
       limitdata = '\0' <repeats 20 times>, "XK\002@ +\f\bXK\002@\fô߶\0\0\0\0\001\0\0\0 +\f\b\0\0\0\0\0\0\0\0\024õ߶\0\0\0\0\001\0\0\0ÿÿÿÿ", '\0' <repeats 76 times>, "XK\002@\0B\e@\0\0\0\0\0\0\0\0XK\002@ +\f\b", '\0' <repeats 83 times>
       sdtmfptr = 0x417be1a8 "H323/ip$10.0.1.123:3095/20153"
       sdtmfdata = '\0' <repeats 255 times>
       stack = 0x64dfefd4 <Address 0x64dfefd4 out of bounds>
       var = 0x8413f90 "IAX2[xxx]/16478"
       play_to_caller = 0
       play_to_callee = 0
ASTERISK-3  0x0806c80c in pbx_exec (c=0x417be1a8, app=0x80e93e8, data=0xb6dff7b4,
   newstack=1) at pbx.c:424
       res = 0
       saved_c_appl = 0x0
       saved_c_data = 0x0
       stack = -1
       execute = (int (*)()) 0x4052a040 <dial_exec>
---Type <return> to continue, or q <return> to quit---
ASTERISK-4  0x0806e7b8 in pbx_extension_helper (c=0x417be1a8,
   context=0x417be300 "h323", exten=0x417be3f4 "3223514295", priority=4,
   callerid=0x8450e50 "''", action=1) at pbx.c:1207
       callerid = 0x80e93e8 "Dial"
       action = -1226836044
       e = (struct ast_exten *) 0x8119c58
       app = (struct ast_app *) 0x80e93e8
       sw = (struct ast_switch *) 0x0
       data = 0x0
       newstack = 1
       res = 120
       status = 4
       incstack = {0x811aeb8 "h323", 0x0 <repeats 20 times>,
 0x40025c3e "[\201â\216", 0x4002eae0 "ì9\001", 0x401b4ab0 "", 0x8450a50 "",
 0x4010d1d6 "[\201Ãr\234\n", 0x8450a58 "''",
 0x417be1a8 "H323/ip$10.0.1.123:3095/20153",
 0x417be1a8 "H323/ip$10.0.1.123:3095/20153", 0x40025c3e "[\201â\216",
 0x4 <Address 0x4 out of bounds>, 0x8450d18 "1084633078.392",
 0xb6dff9c4 "ôã{A\004",
 0x807dc8e "1À\215e\210[^_\211ì]Ã\211öU\211å\203ìlWVS\213}\b ø\t\f\b\203Äü\213·D\027", 0x8450d18 "1084633078.392", 0x417bf95c "1084633078.392",
 0x1f <Address 0x1f out of bounds>, 0x40022195 "[\201ÃKÉ",
 0x4002eae0 "ì9\001", 0xb6dffb60 "", 0xb6dffc00 "",
---Type <return> to continue, or q <return> to quit---
 0x400222d3 "1Àë\005&cedil;\026", 0x48 <Address 0x48 out of bounds>,
 0x7 <Address 0x7 out of bounds>, 0xb6dff9a4 "", 0x4010d1a8 "ë\020\215¶",
 0xb6dff974 "agent635", 0xb6dff97e "",
 0x6e656761 <Address 0x6e656761 out of bounds>,
 0x35333674 <Address 0x35333674 out of bounds>, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
 0x0, 0x807e298 "\215eè[^\211ì]Ã\215v", 0x8450cd8 "ö/&brvbar;@Ó\037\006", 0x0, 0x0,
 0x0, 0x417be300 "h323", 0x417be3f4 "3223514295"}
       passdata = "IAX2/xxx@xxx/003223514295|90", '\0' <repeats 217 times>
       stacklen = 1
       tmp = "\e[1;36;40mDial\e[0;37;40m\0m\0;40m", '\0' <repeats 48 times>
       tmp2 = "\e[1;35;40mH323/ip$10.0.1.123:3095/20153\e[0;37;40m", '\0' <repeats 30 times>
       tmp3 = "\e[1;35;40mIAX2/xxx@xxx/003223514295|90\e[0;37;40m", '\0' <repeats 197 times>
ASTERISK-5  0x0806f4ce in ast_pbx_run (c=0x417be1a8) at pbx.c:1691
       digit = 0 '\0'
       exten = '\0' <repeats 255 times>
       pos = 0
       waittime = -1226835196
       res = 0
ASTERISK-6 0x08075656 in pbx_thread (data=0x417be1a8) at pbx.c:1916
       data = (void *) 0x78
---Type <return> to continue, or q <return> to quit---
ASTERISK-7 0x400210ba in pthread_start_thread () from /lib/libpthread.so.0
No symbol table info available.
(gdb)
Comments:By: Mark Spencer (markster) 2004-05-15 11:18:04

Obviously this is a dupe of the well known issue that H.323 can't handle more than a handful of calls.  It would appear to be locking related.