[Pkg-voip-commits] r6221 - in /asterisk/trunk/debian: changelog patches/series patches/zap-fix-cause34 patches/zap-fix-deadlock

paravoid at alioth.debian.org paravoid at alioth.debian.org
Sat Sep 27 02:48:15 UTC 2008


Author: paravoid
Date: Sat Sep 27 02:48:14 2008
New Revision: 6221

URL: http://svn.debian.org/wsvn/pkg-voip/?sc=1&rev=6221
Log:
* Backport a patch from Xorcom's tree fixing a deadlock situation caused
  by the bristuff patch. (Closes: #493055)
* Backport a patch from Xorcom's tree fixing an occasional "Cause 34" error
  on BRIs.

Added:
    asterisk/trunk/debian/patches/zap-fix-cause34
    asterisk/trunk/debian/patches/zap-fix-deadlock
Modified:
    asterisk/trunk/debian/changelog
    asterisk/trunk/debian/patches/series

Modified: asterisk/trunk/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-voip/asterisk/trunk/debian/changelog?rev=6221&op=diff
==============================================================================
--- asterisk/trunk/debian/changelog (original)
+++ asterisk/trunk/debian/changelog Sat Sep 27 02:48:14 2008
@@ -25,7 +25,13 @@
   * /etc/init.d/asterisk: Use the value of AST_DUMPCORE_DIR if it is a
     directory, not if the value if DUMPCORE_DIR is a directory.
 
- -- Lionel Elie Mamane <lmamane at debian.org>  Wed, 10 Sep 2008 11:28:33 +0200
+  [ Faidon Liambotis ]
+  * Backport a patch from Xorcom's tree fixing a deadlock situation caused
+    by the bristuff patch. (Closes: #493055)
+  * Backport a patch from Xorcom's tree fixing an occasional "Cause 34" error
+    on BRIs.
+
+ -- Faidon Liambotis <paravoid at debian.org>  Sat, 27 Sep 2008 05:47:59 +0300
 
 asterisk (1:1.4.21.2~dfsg-1) unstable; urgency=high
 

Modified: asterisk/trunk/debian/patches/series
URL: http://svn.debian.org/wsvn/pkg-voip/asterisk/trunk/debian/patches/series?rev=6221&op=diff
==============================================================================
--- asterisk/trunk/debian/patches/series (original)
+++ asterisk/trunk/debian/patches/series Sat Sep 27 02:48:14 2008
@@ -81,4 +81,8 @@
 # bridging app backported from 1.6
 # it needs the above feature patches applied first.
 feature-bridge
+
+# bugfixes on top of everything
 fix_zap_no_timing_source
+zap-fix-deadlock
+zap-fix-cause34

Added: asterisk/trunk/debian/patches/zap-fix-cause34
URL: http://svn.debian.org/wsvn/pkg-voip/asterisk/trunk/debian/patches/zap-fix-cause34?rev=6221&op=file
==============================================================================
--- asterisk/trunk/debian/patches/zap-fix-cause34 (added)
+++ asterisk/trunk/debian/patches/zap-fix-cause34 Sat Sep 27 02:48:14 2008
@@ -1,0 +1,23 @@
+fix "cause34" with BRI: reset 'call' when no call
+Reset the 'call' of a zaptel channel if failing to make a call.
+
+(commit 232eb51c7572d8f4d73649103d51d70643bd4ad9 on Xorcom's tree)
+
+ -- Faidon Liambotis <paravoid at debian.org>
+
+--- a/channels/chan_zap.c
++++ b/channels/chan_zap.c
+@@ -2735,11 +2735,12 @@ static int zt_hangup(struct ast_channel 
+ 						/* if we send a rel9999ease complete we wont ge no hangup event, so clear the call here */
+ 						if (icause == 34 || icause == 44 || icause == 82 || icause == 1 || icause == 81 || icause == 17) {
+ 						    if ((ast->_state == AST_STATE_RING) || (ast->_state == AST_STATE_RINGING) || (ast->_state == AST_STATE_DIALING) || (ast->_state == AST_STATE_RESERVED)) {
+-							p->call = NULL;
++							/* no-op */
+ 						    } else {
+ 							ast_log(LOG_ERROR, "What is wrong with you? You cannot use cause %d number when in state %d!\n", icause, ast->_state);
+ 							icause = 16; /* Note, in pri_hangup() libpri will already override the cause */
+ 						    }
++						    p->call = NULL;
+ 						}
+ 
+ 						if (p->pri->nodetype == BRI_NETWORK_PTMP) {

Added: asterisk/trunk/debian/patches/zap-fix-deadlock
URL: http://svn.debian.org/wsvn/pkg-voip/asterisk/trunk/debian/patches/zap-fix-deadlock?rev=6221&op=file
==============================================================================
--- asterisk/trunk/debian/patches/zap-fix-deadlock (added)
+++ asterisk/trunk/debian/patches/zap-fix-deadlock Sat Sep 27 02:48:14 2008
@@ -1,0 +1,33 @@
+Backport a bristuff deadlock fix from changes made to chan_dahdi by Tzafrir.
+(commit ccd11da0599c190f5b678aed3f164579ca873c71 on Xorcom's tree)
+
+ -- Faidon Liambotis <paravoid at debian.org>
+
+--- a/channels/chan_zap.c
++++ b/channels/chan_zap.c
+@@ -8851,7 +8851,7 @@ static void *pri_dchannel(void *vpri)
+ 	int haveidles;
+ 	int activeidles;
+ 	int nextidle = -1;
+-	struct ast_channel *c;
++	struct ast_channel *c = NULL;
+ 	struct timeval tv, lowest, *next;
+ 	struct timeval lastidle = { 0, 0 };
+ 	int doidling=0;
+@@ -9590,6 +9590,7 @@ static void *pri_dchannel(void *vpri)
+ 								snprintf(calledtonstr, sizeof(calledtonstr)-1, "%d", e->ring.calledplan);
+ 								pbx_builtin_setvar_helper(c, "CALLEDTON", calledtonstr);
+ 
++								ast_mutex_lock(&c->lock);
+ 								ast_mutex_lock(&pri->pvts[chanpos]->lock);
+ 								ast_mutex_lock(&pri->lock);
+ 
+@@ -9637,6 +9638,8 @@ static void *pri_dchannel(void *vpri)
+ 					if (crv)
+ 						ast_mutex_unlock(&crv->lock);
+ 					ast_mutex_unlock(&pri->pvts[chanpos]->lock);
++					if (c)
++						ast_mutex_unlock(&c->lock);
+ 				} else {
+ 					if (e->ring.flexible)
+ 						pri_hangup(pri->pri, e->ring.call, PRI_CAUSE_NORMAL_CIRCUIT_CONGESTION, -1);




More information about the Pkg-voip-commits mailing list