[asterisk-bugs] [Asterisk 0015458]: [patch] mISDN rejects calls - NO FREE CHAN IN STACK
Asterisk Bug Tracker
noreply at bugs.digium.com
Thu Oct 1 20:29:40 CDT 2009
A NOTE has been added to this issue.
======================================================================
https://issues.asterisk.org/view.php?id=15458
======================================================================
Reported By: FabienToune
Assigned To: rmudgett
======================================================================
Project: Asterisk
Issue ID: 15458
Category: Channels/chan_misdn
Reproducibility: random
Severity: major
Priority: normal
Status: closed
Asterisk Version: 1.6.0.9
JIRA:
Regression: No
SVN Branch (only for SVN checkouts, not tarball releases): N/A
SVN Revision (number only!):
Request Review:
Resolution: fixed
Fixed in Version:
======================================================================
Date Submitted: 2009-07-07 10:36 CDT
Last Modified: 2009-10-01 20:29 CDT
======================================================================
Summary: [patch] mISDN rejects calls - NO FREE CHAN IN STACK
Description:
This issue is similar to 0013488 but somehow different because of the
version used.
I use a Beronet 4 BRI ports card, with only 3 ports configured,
mISDN-1_1_9.1
Randomly, with an average frequence of once every two weeks, but sometimes
two days in a row, mISDN starts to be able to use one port only (2 calls).
The rest of the calls are rejected with :
Tue Jul 7 16:47:47 2009: P[ 1] handle_frm: frm->addr:42000103
frm->prim:3f082
Tue Jul 7 16:47:47 2009: P[ 1] channel with stid:0 not in use!
Tue Jul 7 16:47:47 2009: P[ 1] handle_frm: frm->addr:42000103
frm->prim:30582
Tue Jul 7 16:47:47 2009: P[ 1] set_channel: bc->channel:0 channel:1
Tue Jul 7 16:47:47 2009: P[ 1] I IND :NEW_CHANNEL oad:488235625
dad:65714545 pid:1974 state:none
Tue Jul 7 16:47:47 2009: P[ 1] --> channel:1 mode:TE cause:16 ocause:16
rad: cad:
Tue Jul 7 16:47:47 2009: P[ 1] --> info_dad: onumplan:2 dnumplan:2
rnumplan: cpnnumplan:0
Tue Jul 7 16:47:47 2009: P[ 1] --> caps:Speech pi:0 keypad:
sending_complete:1
Tue Jul 7 16:47:47 2009: P[ 1] --> screen:0 --> pres:0
Tue Jul 7 16:47:47 2009: P[ 1] --> addr:0 l3id:2013c b_stid:0
layer_id:50020180
Tue Jul 7 16:47:47 2009: P[ 1] --> facility:Fac_None
out_facility:Fac_None
Tue Jul 7 16:47:47 2009: P[ 1] --> bc_state:BCHAN_CLEANED
Tue Jul 7 16:47:47 2009: P[ 1] Chan not existing at the moment
bc->l3id:2013c bc:0x82001d4 event:NEW_CHANNEL port:1 channel:1
Tue Jul 7 16:47:47 2009: P[ 1] NO USERUESRINFO
Tue Jul 7 16:47:47 2009: P[ 1] !! NO FREE CHAN IN STACK
Tue Jul 7 16:47:47 2009: P[ 1] Requested Channel Already in Use
releasing this call with cause 34!!!!
Tue Jul 7 16:47:47 2009: P[ 1] I SEND:RELEASE_COMPLETE oad:488235625
dad:65714545 pid:1974
Tue Jul 7 16:47:47 2009: P[ 1] --> bc_state:BCHAN_CLEANED
Tue Jul 7 16:47:47 2009: P[ 1] --> channel:0 mode:TE cause:16 ocause:34
rad: cad:
Tue Jul 7 16:47:47 2009: P[ 1] --> info_dad: onumplan:2 dnumplan:2
rnumplan: cpnnumplan:0
Tue Jul 7 16:47:47 2009: P[ 1] --> caps:Speech pi:3 keypad:
sending_complete:1
Tue Jul 7 16:47:47 2009: P[ 1] --> screen:0 --> pres:0
Tue Jul 7 16:47:47 2009: P[ 1] --> addr:0 l3id:2013c b_stid:0
layer_id:50020180
Tue Jul 7 16:47:47 2009: P[ 1] --> facility:Fac_None
out_facility:Fac_None
Tue Jul 7 16:47:47 2009: P[ 1] $$$ CLEANUP CALLED pid:1974
Tue Jul 7 16:47:47 2009: P[ 1] couldn't handle event
Tue Jul 7 16:47:47 2009: P[ 1] Sending msg, prim:35a80 addr:41000104
dinfo:2013c
Tue Jul 7 16:47:47 2009: P[ 1] handle_frm: frm->addr:42000103
frm->prim:35a81
Tue Jul 7 16:47:47 2009: P[ 1] CC_RELEASE_COMPLETE|CONFIRM [TE]
Tue Jul 7 16:47:47 2009: P[ 1] I IND :RELEASE_COMPLETE oad: dad:
pid:1974 state:none
Tue Jul 7 16:47:47 2009: P[ 1] --> channel:0 mode:TE cause:16 ocause:34
rad: cad:
Tue Jul 7 16:47:47 2009: P[ 1] --> info_dad: onumplan:0 dnumplan:0
rnumplan:0 cpnnumplan:0
Tue Jul 7 16:47:47 2009: P[ 1] --> caps:Speech pi:0 keypad:
sending_complete:0
Tue Jul 7 16:47:47 2009: P[ 1] --> screen:0 --> pres:0
Tue Jul 7 16:47:47 2009: P[ 1] --> addr:0 l3id:2013c b_stid:0
layer_id:50020180
Tue Jul 7 16:47:47 2009: P[ 1] --> facility:Fac_None
out_facility:Fac_None
Tue Jul 7 16:47:47 2009: P[ 1] --> bc_state:BCHAN_CLEANED
Tue Jul 7 16:47:47 2009: P[ 1] --> no Ch, so we've already released.
Tue Jul 7 16:47:47 2009: P[ 0] Cannot hangup chan, no ch
Tue Jul 7 16:47:47 2009: P[ 1] release_chan: Ch not found!
Tue Jul 7 16:47:47 2009: P[ 1] $$$ CLEANUP CALLED pid:1974
Tue Jul 7 16:47:47 2009: P[ 1] handle_frm: frm->addr:42000103
frm->prim:3f182
Tue Jul 7 16:47:47 2009: P[ 1] --> lib: RELEASE_CR Ind with l3id:2013c
Tue Jul 7 16:47:47 2009: P[ 1] --> lib: CLEANING UP l3id: 2013c
Tue Jul 7 16:47:47 2009: P[ 1] $$$ CLEANUP CALLED pid:1974
Other ports are free, but mISDN seems to focus only on port 1...
I usually try to reload mISDN, to restart port 1, port 2, port 3, and
somehow, it works. Today, I restarted ports, but the problem came back very
fast/was not solved... If I restart the server, it's ok, but can't do that
during use...
This is a production server, and it's getting harder to manage...
I'm now trying to change method from round-robin to standard_desc (first
try was standard...)
Here is my misdn.conf
[general]
misdn_init=/etc/misdn-init.conf
debug=4
stop_tone_after_first_digit=yes
bridging=yes
tracefile=/var/log/asterisk/misdn.log
[default]
context=mISDN
language=fr
senddtmf=yes
allowed_bearers=all
nationalprefix=0
internationalprefix=00
rxgain=0
txgain=0
echocancel=yes
te_choose_channel=no
pmp_l1_check=yes
method=standard_dec
dialplan=0
localdialplan=0
cpndialplan=0
early_bconnect=yes
always_immediate=no
immediate=no
hdlc=yes
astdtmf=yes
presentation=-1
screen=-1
block_on_alarm=no
need_more_infos=no
[mISDN]
ports=1,2,3
context=mISDN
msns=*
======================================================================
Relationships ID Summary
----------------------------------------------------------------------
related to 0015490 [patch] mISDN rejects incoming calls (r...
======================================================================
----------------------------------------------------------------------
(0111776) svnbot (reporter) - 2009-10-01 20:29
https://issues.asterisk.org/view.php?id=15458#c111776
----------------------------------------------------------------------
Repository: asterisk
Revision: 221871
_U branches/1.6.1/
U branches/1.6.1/channels/misdn/isdn_lib.c
U branches/1.6.1/channels/misdn/isdn_lib_intern.h
------------------------------------------------------------------------
r221871 | rmudgett | 2009-10-01 20:29:39 -0500 (Thu, 01 Oct 2009) | 40
lines
Merged revisions 221844 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk
................
r221844 | rmudgett | 2009-10-01 20:09:31 -0500 (Thu, 01 Oct 2009) | 33
lines
Merged revisions 221769 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r221769 | rmudgett | 2009-10-01 18:18:28 -0500 (Thu, 01 Oct 2009) | 26
lines
Occasionally losing use of B channels in chan_misdn.
I have not been able to reproduce the problem of losing channels.
However, I have seen in the code a reentrancy problem that might give
these symptoms.
The reentrancy patch does several things:
1) Guards B channel and B channel structure allocation.
2) Makes the B channel structure find routines more precise in
locating records.
3) Never leave a B channel allocated if we received cause 44.
The last item may cause temporary outgoing call problems, but they
should
clear when the line becomes idle.
(closes issue https://issues.asterisk.org/view.php?id=15490)
Reported by: slutec18
Patches:
issue15490_channel_alloc_reentrancy.patch uploaded by rmudgett
(license 664)
Tested by: rmudgett, slutec18
(closes issue https://issues.asterisk.org/view.php?id=15458)
Reported by: FabienToune
Patches:
issue15458_channel_alloc_reentrancy.patch uploaded by rmudgett
(license 664)
Tested by: FabienToune, rmudgett, slutec18
........
................
------------------------------------------------------------------------
http://svn.digium.com/view/asterisk?view=rev&revision=221871
Issue History
Date Modified Username Field Change
======================================================================
2009-10-01 20:29 svnbot Checkin
2009-10-01 20:29 svnbot Note Added: 0111776
======================================================================
More information about the asterisk-bugs
mailing list