Change in osmo-bsc[master]: Properly handle dyn TS TCH with vamos after updating subslots_per_pchan

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 Nov 15 09:49:41 UTC 2021


pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bsc/+/25940 )

Change subject: Properly handle dyn TS TCH with vamos after updating subslots_per_pchan
......................................................................

Properly handle dyn TS TCH with vamos after updating subslots_per_pchan

In the case of ts->pchan_from_config=GSM_PCHAN_OSMO_DYN,
ts->max_primary_lchans will be 8 due to SDCCH8 support, and we don't
want to set lchan->vamos.is_secondary=true for lchans at the end of the
array.

Related: OS#5278
Change-Id: If86af5fafe059d5e830c1f6d37034f7325d9a96c
---
M src/osmo-bsc/timeslot_fsm.c
1 file changed, 10 insertions(+), 5 deletions(-)

Approvals:
  laforge: Looks good to me, but someone else must approve
  pespin: Looks good to me, approved
  osmith: Looks good to me, but someone else must approve
  Jenkins Builder: Verified



diff --git a/src/osmo-bsc/timeslot_fsm.c b/src/osmo-bsc/timeslot_fsm.c
index 93fc380..86fea3c 100644
--- a/src/osmo-bsc/timeslot_fsm.c
+++ b/src/osmo-bsc/timeslot_fsm.c
@@ -201,19 +201,24 @@
 {
 	int i;
 	struct gsm_lchan *lchan;
+	uint8_t max_lchans_possible_vamos;
+
 	ts->pchan_is = pchan_is;
 	ts->max_primary_lchans = pchan_subslots(ts->pchan_is);
-	LOG_TS(ts, LOGL_DEBUG, "pchan_is=%s max_primary_lchans=%d max_lchans_possible=%d\n",
-	       gsm_pchan_name(ts->pchan_is), ts->max_primary_lchans, ts->max_lchans_possible);
+	max_lchans_possible_vamos = pchan_subslots_vamos(ts->pchan_is);
+	LOG_TS(ts, LOGL_DEBUG, "pchan_is=%s max_primary_lchans=%d max_lchans_possible=%d (%u VAMOS)\n",
+	       gsm_pchan_name(ts->pchan_is), ts->max_primary_lchans, ts->max_lchans_possible,
+	       max_lchans_possible_vamos);
 	switch (ts->pchan_is) {
 	case GSM_PCHAN_TCH_F:
 	case GSM_PCHAN_TCH_H:
 		for (i = 0; i < ts->max_lchans_possible; i++) {
 			lchan = &ts->lchan[i];
-			if (i < ts->max_primary_lchans)
-				lchan->vamos.is_secondary = false;
-			else
+			if (i >= ts->max_primary_lchans &&
+			    (i - ts->max_primary_lchans) < (int)max_lchans_possible_vamos)
 				lchan->vamos.is_secondary = true;
+			else
+				lchan->vamos.is_secondary = false;
 			lchan_fsm_update_id(lchan);
 		}
 		break;

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

Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: If86af5fafe059d5e830c1f6d37034f7325d9a96c
Gerrit-Change-Number: 25940
Gerrit-PatchSet: 4
Gerrit-Owner: pespin <pespin at sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy at sysmocom.de>
Gerrit-Reviewer: laforge <laforge at osmocom.org>
Gerrit-Reviewer: neels <nhofmeyr at sysmocom.de>
Gerrit-Reviewer: osmith <osmith at sysmocom.de>
Gerrit-Reviewer: pespin <pespin at sysmocom.de>
Gerrit-MessageType: merged
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20211115/87df7dd9/attachment.htm>


More information about the gerrit-log mailing list