Change in osmo-bts[master]: rsl: Fix all shadow TS being Chan Act NACKed

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/.

pespin gerrit-no-reply at lists.osmocom.org
Mon Oct 11 11:59:09 UTC 2021


pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/25743 )


Change subject: rsl: Fix all shadow TS being Chan Act NACKed
......................................................................

rsl: Fix all shadow TS being Chan Act NACKed

The OML NM Channel FSM state only apply to primary timeslots, hence we
need to make sure we pick the primary TS (the non-shadow one).

Due to this bug, all channels on shadow TS where NACKed because the
related state was never "Enabled Ok".

Fixes: c97a7f51e1b15d40e39df4b7d07b3c6534540186
Related: OS#5249
Related: OS#5251
Change-Id: If47e4bdd45a05ed1b5709b6e3d541f2830723e37
---
M src/common/rsl.c
1 file changed, 5 insertions(+), 2 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/43/25743/1

diff --git a/src/common/rsl.c b/src/common/rsl.c
index 638caf8..b186adf 100644
--- a/src/common/rsl.c
+++ b/src/common/rsl.c
@@ -1624,6 +1624,7 @@
 	struct abis_rsl_dchan_hdr *dch = msgb_l2(msg);
 	struct gsm_lchan *lchan = msg->lchan;
 	struct gsm_bts_trx_ts *ts = lchan->ts;
+	struct gsm_bts_trx_ts *primary_ts;
 	struct tlv_parsed tp;
 	const struct tlv_p_entry *ie;
 	uint8_t type, cause;
@@ -1635,8 +1636,10 @@
 		return rsl_tx_chan_act_nack(lchan, RSL_ERR_EQUIPMENT_FAIL);
 	}
 
-	if (ts->mo.nm_state.operational != NM_OPSTATE_ENABLED ||
-	    ts->mo.nm_state.availability != NM_AVSTATE_OK) {
+	/* We need to pick the real TS here to check NM state: */
+	primary_ts = ts->vamos.is_shadow ? ts->vamos.peer : ts;
+	if (primary_ts->mo.nm_state.operational != NM_OPSTATE_ENABLED ||
+	    primary_ts->mo.nm_state.availability != NM_AVSTATE_OK) {
 		LOGP(DRSL, LOGL_ERROR, "%s rx chan activ but TS not in nm_state oper=ENABLED avail=OK, nack!\n",
 		     gsm_ts_and_pchan_name(ts));
 		return rsl_tx_chan_act_nack(lchan, RSL_ERR_RR_UNAVAIL);

-- 
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/25743
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: If47e4bdd45a05ed1b5709b6e3d541f2830723e37
Gerrit-Change-Number: 25743
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin at sysmocom.de>
Gerrit-MessageType: newchange
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20211011/51b2892a/attachment.htm>


More information about the gerrit-log mailing list