<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Nov 26, 2014 at 3:20 PM, James Lamanna <span dir="ltr"><<a href="mailto:jlamanna@gmail.com" target="_blank">jlamanna@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote"><div><div class="h5">On Tue, Nov 25, 2014 at 10:21 AM, James Lamanna <span dir="ltr"><<a href="mailto:jlamanna@gmail.com" target="_blank">jlamanna@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote"><span>On Tue, Nov 25, 2014 at 8:14 AM, Matthew Jordan <span dir="ltr"><<a href="mailto:mjordan@digium.com" target="_blank">mjordan@digium.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span>On Mon, Nov 24, 2014 at 2:12 PM, James Lamanna <<a href="mailto:jlamanna@gmail.com" target="_blank">jlamanna@gmail.com</a>> wrote:<br>
> Also, how big does the cache in frame.c grow to?<br>
> I've recompiled with MALLOC_DEBUG on that server:<br>
><br>
> asterisk -rx "memory show summary"<br>
><br>
> ....<br>
> 1780466242 bytes (1780181594 cache) in    2352909 allocations in file<br>
> frame.c<br>
> ...<br>
><br>
> Seems like a ridiculous cache.<br>
><br>
<br>
</span>I'm not going to respond to your new thread, since it is the same<br>
discussion as this one.<br>
<br>
The frame cache is a per-thread local cache of frames that prevents<br>
having to re-allocate frames as they pass through Asterisk. Clearly,<br>
something is abusing it.<br>
<br>
I think you'll need to provide some more information on how you're<br>
producing this situation. Specifically:<br>
 * Channel technologies involved, and the formats on the channels<br>
 * Dialplan that reproduces the problem<br>
<br>
Are you using any non-core dialplan applications or channel drivers?<br><div><div><br></div></div></blockquote><div><br></div></span><div>This PBX has about 100 registered SIP clients, along with 23 PRI channels, 2 inbound/outbound SIP trunks and around 100 IAXModems registered to it. It primarily handles faxing. </div><div>I am not using any non-standard channel drivers. I am using the T.38 gateway funcionality.</div><div><br></div><div>The jist of the dialplan is this: (example of the PRI and a SIP trunk, inbound)</div><div><br></div><div>[pri-in]</div><div><div>exten => _X.,1,Set(__FROM_DID=${EXTEN})</div><div>exten => _X.,n,Set(FAX_IDX=700)</div><div>exten => _X.,n,Set(MAX_IDX=719)</div><div>exten => _X.,n,Goto(dial-hylafax,s,1)</div></div><div><br></div><div>[sip-trunk-in]</div><div><div>exten => _X.,1(normal),Set(__FROM_DID=${EXTEN})</div><div>exten => _X.,n,Set(FAX_IDX=950)</div><div>exten => _X.,n,Set(MAX_IDX=959)</div><div>exten => _X.,n,Set(FAXOPT(gateway)=yes)</div><div>exten => _X.,n,Goto(dial-hylafax,s,1)</div></div><div><br></div><div><div>[dial-hylafax]</div><div>exten => s,1,GotoIf($["${FROM_DID:0:1}" = "1"]?prune:cont)</div><div>exten => s,n(prune),Set(__FROM_DID=${FROM_DID:1})</div><div>exten => s,n(cont),GotoIf($[${FAX_IDX} <= ${MAX_IDX}]?tryfax:nofax)</div><div>exten => s,n(tryfax),Set(STATE=${DEVICE_STATE(Custom:iaxmodem${FAX_IDX})})</div><div>exten => s,n,NoOp(${STATE})</div><div>exten => s,n,Set(DEVICE_STATE(Custom:iaxmodem${FAX_IDX})=INUSE)</div><div>exten => s,n,Dial(IAX2/iaxmodem${FAX_IDX}/${FROM_DID},60,g)</div><div>exten => s,n,Goto(s-${DIALSTATUS},1)</div><div>exten => s,n(nofax),Playtones(busy)</div><div>exten => s,n,NoOp(NO MODEMS AVAILABLE)</div><div>exten => s,n,Wait(20)</div><div>exten => s,n,Hangup()</div><div>exten => s-ANSWER,1,NoOp(IAXMODEM HANGUP)</div><div>exten => s-ANSWER,n,Set(DEVICE_STATE(Custom:iaxmodem${FAX_IDX})=NOT_INUSE)</div><div>exten => s-ANSWER,n,Hangup()</div><div>exten => _s-.,1,Set(FAX_IDX=${MATH(1+${FAX_IDX},i)})</div><div>exten => _s-.,n,Goto(s,1)</div><div>exten => h,1,Set(DEVICE_STATE(Custom:iaxmodem${FAX_IDX})=NOT_INUSE)</div></div><div><br></div><div>The current state requires me to restart Asterisk almost every day.</div><div>I'm also seeing this on a completely different machine after upgrading from Asterisk10 to 11.</div><span><font color="#888888"><div><br></div></font></span></div></div></div></blockquote><div><br></div></div></div><div>I'm wondering if this is a problem in the SLIN converter?</div><div>I do use SLIN with iaxmodem.</div><span class=""><font color="#888888"><br></font></span></div></div></div></blockquote><div><br></div><div>Also of note,</div><div>A quick valgrind run and attempting to send a few faxes produces a bunch of these in the valgrind output:</div><div><br></div><div>==30640== 217,259 bytes in 287 blocks are definitely lost in loss record 1,778 of 1,789</div><div>==30640==    at 0x4C267CC: calloc (vg_replace_malloc.c:467)</div><div>==30640==    by 0x4DC50E: ast_frdup (utils.h:523)</div><div>==30640==    by 0x47125F: __ast_queue_frame (channel.c:1284)</div><div>==30640==    by 0x1EF75589: __do_deliver (chan_iax2.c:3102)</div><div>==30640==    by 0x1EF76C5A: schedule_delivery (chan_iax2.c:4374)</div><div>==30640==    by 0x1EF8F497: socket_process_helper (chan_iax2.c:12010)</div><div>==30640==    by 0x1EF99C37: iax2_process_thread (chan_iax2.c:12030)</div><div>==30640==    by 0x56C458: dummy_start (utils.c:1192)</div><div>==30640==    by 0x5E359C9: start_thread (pthread_create.c:300)</div><div>==30640==    by 0x270326FF: ???</div><div> </div></div><br></div></div>