diff --git a/channels/chan_mgcp.c b/channels/chan_mgcp.c
index f55141e30eaece4d05e08d89d9ebd28444990611..a3efad58a70a8fbb4af6074dd752e3c6516e8ecb 100755
--- a/channels/chan_mgcp.c
+++ b/channels/chan_mgcp.c
@@ -1060,13 +1060,16 @@ static struct mgcp_subchannel *find_subchannel(char *name, int msgid, struct soc
 			}
 			p = g->endpoints;
 			while(p) {
-                ast_log(LOG_DEBUG, "Searching on %s@%s for subchannel\n", p->name, g->name);
+				if (option_debug)
+	                ast_log(LOG_DEBUG, "Searching on %s@%s for subchannel\n", p->name, g->name);
                 if (msgid) {
                     sub = p->sub;
                     do {
-                        ast_log(LOG_DEBUG, "Searching on %s@%s-%d for subchannel with lastout: %d\n", p->name, g->name, sub->id, msgid);
+						if (option_debug)
+    	                    ast_log(LOG_DEBUG, "Searching on %s@%s-%d for subchannel with lastout: %d\n", p->name, g->name, sub->id, msgid);
                         if (sub->lastout == msgid) {
-                            ast_log(LOG_DEBUG, "Found subchannel sub%d to handle request %d sub->lastout: %d\n", sub->id, msgid, sub->lastout);
+							if (option_debug)
+            	                ast_log(LOG_DEBUG, "Found subchannel sub%d to handle request %d sub->lastout: %d\n", sub->id, msgid, sub->lastout);
                             found = 1;
                             break;
                         }
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index cefe7abfb5263296f44964580605b0a8f21f9a97..d56479b1ca0360e67796987ff064c49f25105360 100755
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -463,7 +463,7 @@ static int retrans_pkt(void *data)
 	} else {
 		ast_log(LOG_WARNING, "Maximum retries exceeded on call %s for seqno %d (%s)\n", pkt->owner->callid, pkt->seqno, pkt->resp ? "Response" : "Request");
 		pkt->retransid = -1;
-		while(pkt->owner->owner && ast_mutex_lock(&pkt->owner->owner->lock)) {
+		while(pkt->owner->owner && ast_mutex_trylock(&pkt->owner->owner->lock)) {
 			ast_mutex_unlock(&pkt->owner->lock);
 			usleep(1);
 			ast_mutex_lock(&pkt->owner->lock);