[sr-dev] git:4.0: pipelimit: avoid double locking when changing pipe via rpc

Daniel-Constantin Mierla miconda at gmail.com
Thu Jul 11 14:37:32 CEST 2013


Module: sip-router
Branch: 4.0
Commit: 3612981970e8002b3ab7f7d0324354e282205e2b
URL:    http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=3612981970e8002b3ab7f7d0324354e282205e2b

Author: Daniel-Constantin Mierla <miconda at gmail.com>
Committer: Daniel-Constantin Mierla <miconda at gmail.com>
Date:   Thu Jul 11 14:36:02 2013 +0200

pipelimit: avoid double locking when changing pipe via rpc

(cherry picked from commit 0c6fef5fdc2a586ebfa607d3b5344266c08ca996)

---

 modules/pipelimit/pl_ht.c |    4 +---
 1 files changed, 1 insertions(+), 3 deletions(-)

diff --git a/modules/pipelimit/pl_ht.c b/modules/pipelimit/pl_ht.c
index a6b9b8a..f044203 100644
--- a/modules/pipelimit/pl_ht.c
+++ b/modules/pipelimit/pl_ht.c
@@ -675,16 +675,14 @@ void rpc_pl_set_pipe(rpc_t *rpc, void *c)
 
 	it->algo = algo_id;
 	it->limit = limit;
+	pl_pipe_release(&pipeid);
 
 	if (check_feedback_setpoints(0)) {
-		pl_pipe_release(&pipeid);
 		LM_ERR("feedback limits don't match\n");
 		rpc->fault(c, 400, "Feedback limits don't match");
 		return;
 	} else {
 		*_pl_pid_setpoint = 0.01 * (double)_pl_cfg_setpoint;
 	}
-
-	pl_pipe_release(&pipeid);
 }
 




More information about the sr-dev mailing list