my ss7 crashed with the following error taking from the core dump.<br>the crash is noticed after the call reached a peak of 34 calls... and fter then I made max inbound on oh323 to 29 so that it will not go to the second ss7 and I disable the link and phyically removed it. my provider too get it blocked.
<br><br>however, all the changes made by Kai and Kristian were followed.<br><br>I am running asterisk-1.2.5, chan_ss7-0.8.3 with zaptel 1.2.4<br><br>I have the follwoing from my dump<br>Reading symbols from /lib/libgcc_s.so.1...done.
<br>Loaded symbols for /lib/libgcc_s.so.1<br>#0&nbsp; 0xf6a90f13 in t1_timeout (arg=0x82f11c0) at chan_ss7.c:765<br>765&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; isup_send_rel(pvt, pvt-&gt;hangupcause);<br><br>I have the core dump and the ss7 dump and I will be glad if someone can help.
<br><br>the extract from my chan_ss7.c are as below<br><br>## FOR THE isup_send_rel(pvt, pvt-&gt;hangupcause);######<br><br>static int start_timer(int msec, int (*cb)(void *), void *data) {<br>&nbsp; int id = ast_sched_add(monitor_sched, msec, cb, data);
<br>&nbsp; if(msec &lt; MONITOR_FREQ) {<br>&nbsp;&nbsp;&nbsp; wakeup_monitor();<br>&nbsp; }<br>&nbsp; return id;<br>}<br><br>static int t1_timeout(void *arg) {<br>&nbsp; struct ss7_chan *pvt = arg;<br><br>&nbsp; ast_log(LOG_NOTICE, &quot;T1 timeout (waiting for RLC) CIC=%d.\n&quot;, pvt-&gt;cic);
<br>&nbsp; isup_send_rel(pvt, pvt-&gt;hangupcause);<br>&nbsp; //isup_send_rel(pvt, pvt-&gt;owner-&gt;hangupcause);<br>&nbsp; return 1;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* Run us again the next period */<br>}<br><br>/* This should be called with pvt-&gt;lock held. */
<br>static void t1_clear(struct ss7_chan *pvt) {<br>&nbsp; if(pvt-&gt;t1 != -1) {<br>&nbsp;&nbsp;&nbsp; ast_sched_del(monitor_sched, pvt-&gt;t1);<br>&nbsp;&nbsp;&nbsp; pvt-&gt;t1 = -1;<br>&nbsp; }<br>}<br><br>/* This should be called with pvt-&gt;lock held. */<br>
static void t1_start(struct ss7_chan *pvt) {<br>&nbsp; t1_clear(pvt);<br>&nbsp; pvt-&gt;t1 = start_timer(30000, t1_timeout, pvt);<br>}<br><br><br><br>### FOR t9_start(chan) #########<br>if(pvt-&gt;state != ST_SENT_IAM) {<br>&nbsp;&nbsp;&nbsp; ast_log(LOG_NOTICE, &quot;Got ACM message, but sent no IAM, on CIC=%d?!?&quot;,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pvt-&gt;cic);<br>&nbsp;&nbsp;&nbsp; /* Q.764 (<a href="http://2.9.5.1">2.9.5.1</a> f) error handling for the spurious ACM. */<br>&nbsp;&nbsp;&nbsp; if(pvt-&gt;state == ST_IDLE)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; reset_circuit(pvt);<br>&nbsp;&nbsp;&nbsp; return;<br>&nbsp; }<br><br>
&nbsp; if(chan == NULL) {<br>&nbsp;&nbsp;&nbsp; ast_log(LOG_NOTICE, &quot;Missing chan pointer for CIC=%d, processing ACM?!?\n&quot;, pvt-&gt;cic);<br>&nbsp;&nbsp;&nbsp; return;<br>&nbsp; }<br><br>&nbsp; t9_start(chan);<br><br>&nbsp; /* Q.764 (<a href="http://2.1.4.6">2.1.4.6
</a> a): Alert if called_party_status is &quot;subscriber free&quot;. */<br>&nbsp; if(inmsg-&gt;acm.back_ind.called_party_status == 1) {<br>&nbsp;&nbsp;&nbsp; ast_queue_frame(chan, &amp;ring_frame);<br>&nbsp; }<br><br><br>Goksie<br><br><br><div><span class="gmail_quote">
On 3/22/06, <b class="gmail_sendername">Kai Militzer</b> &lt;<a href="mailto:km@westend.com">km@westend.com</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hello Kristian and rest,<br><br>Kristian Nielsen wrote:<br>&gt; For a quick fix, try moving the this line in process_acm():<br>&gt;<br>&gt;&nbsp;&nbsp; t9_start(chan);<br>&gt;<br>&gt; down to after this code, which checks for a NULL chan:
<br>&gt;<br>&gt;&nbsp;&nbsp; if(chan == NULL) {<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; ast_log(LOG_NOTICE, &quot;Missing chan pointer for CIC=%d, processing ACM?!?\n&quot;, pvt-&gt;cic);<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; return;<br>&gt;&nbsp;&nbsp; }<br>&gt;<br>&gt; that should fix the crash, though I think the code is still not quite
<br>&gt; right (ie. no need to reset the circuit in this case).<br><br>&gt; Would be great if you could try this change and send us the next crash!<br><br>That helped. I wasn't able to get it crashing again, but I'll try to
<br>find something else ... ;)<br><br>&gt; BTW, nice problem reports with backtraces and everything ...<br><br>You are welcome ... I want a usable version of chan_ss7 at the end of<br>june because I need to go into production then ;)
<br><br>&gt; Incidentally, I wonder if you are making calls faster than a single E1<br>&gt; signalling time slot can handle? In any case it's very good that you<br>&gt; do, you've already found us two crashing bugs :-).<br>
<br>What I do to test is the following:<br><br>I have an asterisk that dials out via iax to the asterisk with the ss7<br>which then dials out via ss7 to another external ss7 gateway which then<br>connects to another asterisk that starts an echo application. I start
<br>this call with a .call file (or better: 60 of them) that I copy into the<br>spool dir. When the call is connected, I start playback of a MP3 file<br>via the dialplan. Because of this I have 60 parallel calls starting at
<br>once. This is not what you will have in real life, but it helps to find<br>bugs and gives me an idea of what the max load is that my system can handle.<br><br>If you have any other ideas how/what else I can test, I am happy to give
<br>it a try.<br><br>Best regards,<br>Kai<br><br>--<br>Kai Militzer&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; WESTEND GmbH&nbsp;&nbsp;|&nbsp;&nbsp;Internet-Business-Provider<br>Technik&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CISCO Systems Partner - Authorized Reseller<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Lütticher Straße 10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tel 0241/701333-14
<br><a href="mailto:km@westend.com">km@westend.com</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; D-52064 Aachen&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Fax 0241/911879<br><br>_______________________________________________<br>--Bandwidth and Colocation provided by <a href="http://Easynews.com">
Easynews.com</a> --<br><br>asterisk-ss7 mailing list<br>To UNSUBSCRIBE or update options visit:<br>&nbsp;&nbsp; <a href="http://lists.digium.com/mailman/listinfo/asterisk-ss7">http://lists.digium.com/mailman/listinfo/asterisk-ss7</a>
<br></blockquote></div><br>