[PATCH] openbsc[master]: debug log: log all lchan_alloc steps

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

Neels Hofmeyr gerrit-no-reply at lists.osmocom.org
Tue Jun 21 19:42:00 UTC 2016


Review at  https://gerrit.osmocom.org/387

debug log: log all lchan_alloc steps

Change-Id: Ib2d11744d92dc06205fb1573815e11efd84842b0
---
M openbsc/src/libbsc/chan_alloc.c
1 file changed, 23 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.osmocom.org:29418/openbsc refs/changes/87/387/1

diff --git a/openbsc/src/libbsc/chan_alloc.c b/openbsc/src/libbsc/chan_alloc.c
index f4ed530..8e06c65 100644
--- a/openbsc/src/libbsc/chan_alloc.c
+++ b/openbsc/src/libbsc/chan_alloc.c
@@ -39,8 +39,11 @@
 {
 	/* FIXME: How does this behave for BS-11 ? */
 	if (is_ipaccess_bts(ts->trx->bts)) {
-		if (!nm_is_running(&ts->mo.nm_state))
+		if (!nm_is_running(&ts->mo.nm_state)) {
+			DEBUGP(DRLL, "BTS %u TRX %u TS %u: not usable\n",
+			       ts->trx->bts->nr, ts->trx->nr, ts->nr);
 			return 0;
+		}
 	}
 
 	/* If a dyn PDCH channel is busy changing, it is already taken or not
@@ -152,6 +155,7 @@
 	struct gsm_lchan *lchan = NULL;
 	enum gsm_phys_chan_config first, first_cbch, second, second_cbch;
 
+	DEBUGP(DRLL, "Looking for lchan %s\n", gsm_lchant_name(type));
 	switch (type) {
 	case GSM_LCHAN_SDCCH:
 		if (bts->chan_alloc_reverse) {
@@ -199,11 +203,15 @@
 		break;
 	case GSM_LCHAN_TCH_F:
 		lchan = _lc_find_bts(bts, GSM_PCHAN_TCH_F);
+		if (!lchan)
+			DEBUGP(DRLL, "No pure TCH/F available\n");
 		/* If we don't have TCH/F available, fall-back to TCH/H */
 		if (!lchan) {
 			lchan = _lc_find_bts(bts, GSM_PCHAN_TCH_H);
 			if (lchan)
 				type = GSM_LCHAN_TCH_H;
+			else
+				DEBUGP(DRLL, "No TCH/H available\n");
 		}
 		/* If we don't have TCH/H either, try dynamic TCH/F_PDCH */
 		if (!lchan) {
@@ -212,21 +220,29 @@
 			 * set to GSM_LCHAN_TCH_F, but for clarity's sake... */
 			if (lchan)
 				type = GSM_LCHAN_TCH_F;
+			else
+				DEBUGP(DRLL, "No TCH/F_PDCH available\n");
 		}
 		break;
 	case GSM_LCHAN_TCH_H:
 		lchan =_lc_find_bts(bts, GSM_PCHAN_TCH_H);
+		if (!lchan)
+			DEBUGP(DRLL, "No pure TCH/H available\n");
 		/* If we don't have TCH/H available, fall-back to TCH/F */
 		if (!lchan) {
 			lchan = _lc_find_bts(bts, GSM_PCHAN_TCH_F);
 			if (lchan)
 				type = GSM_LCHAN_TCH_F;
+			else
+				DEBUGP(DRLL, "No TCH/F available\n");
 		}
 		/* If we don't have TCH/F either, try dynamic TCH/F_PDCH */
 		if (!lchan) {
 			lchan = _lc_find_bts(bts, GSM_PCHAN_TCH_F_PDCH);
 			if (lchan)
 				type = GSM_LCHAN_TCH_F;
+			else
+				DEBUGP(DRLL, "No TCH/F_PDCH available\n");
 		}
 		break;
 	default:
@@ -235,6 +251,11 @@
 
 	if (lchan) {
 		lchan->type = type;
+		DEBUGP(DRLL, "For %s, found BTS %u TRX %u TS %u %s\n",
+		       gsm_lchant_name(type),
+		       lchan->ts->trx->bts->nr, lchan->ts->trx->nr,
+		       lchan->ts->nr,
+		       gsm_pchan_name(lchan->ts->pchan));
 
 		/* clear sapis */
 		memset(lchan->sapis, 0, ARRAY_SIZE(lchan->sapis));
@@ -248,6 +269,7 @@
 		sig.bts = bts;
 		sig.type = type;
 		osmo_signal_dispatch(SS_CHALLOC, S_CHALLOC_ALLOC_FAIL, &sig);
+		DEBUGP(DRLL, "Not available: %s\n", gsm_lchant_name(type));
 	}
 
 	return lchan;

-- 
To view, visit https://gerrit.osmocom.org/387
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ib2d11744d92dc06205fb1573815e11efd84842b0
Gerrit-PatchSet: 1
Gerrit-Project: openbsc
Gerrit-Branch: master
Gerrit-Owner: Neels Hofmeyr <nhofmeyr at sysmocom.de>



More information about the gerrit-log mailing list