Project

General

Profile

Actions

Bug #5244

open

Training Sequence Code error on Handover into sysmobts

Added by keith 2 months ago. Updated 2 months ago.

Status:
New
Priority:
Low
Assignee:
-
Category:
-
Target version:
-
Start date:
10/01/2021
Due date:
% Done:

0%

Spec Reference:

Description

When handing over from osmo-bts-trx/osmo-trx-lms into sysmobts, I'm seeing

DL1C <0006> ../../../git/src/common/rsl.c:269 (bts=0,trx=0,ts=6,ss=0) This PHY does not support lchan TSC 0 != BSIC-TSC 7, sending NACK

Of course, then all lchans end up B0RKEN


Related issues

Related to OsmoBSC - Bug #5219: VTY cmd "bts 0 trx 0 timeslot 1 sub-slot 0 activate fr" fails on sysmobts with BSIC 10Resolvedpespin08/27/2021

Actions
Actions #1

Updated by keith 2 months ago

Looking at Abis in wireshark, The TSC is set to 0 in the CHANnel ACTIVation.

In lchan_fsm.c:725

lchan->activate.tsc = (lchan->activate.info.tsc >= 0) ? lchan->activate.info.tsc : gsm_ts_tsc(lchan->ts);

Adding some printf around here, I can see that
lchan->activate.info.tsc is indeed zero

The comment is
/* Use the TSC provided in the modification request, if any. Otherwise use the timeslot's configured * TSC. */

but for know I don't figure out where the modification request is coming from. maybe it makes some sense to neels

For now,
- lchan->activate.tsc = (lchan->activate.info.tsc >= 0) ? lchan->activate.info.tsc : gsm_ts_tsc(lchan->ts);
+ lchan->activate.tsc = (lchan->activate.info.tsc >= 1) ? lchan->activate.info.tsc : gsm_ts_tsc(lchan->ts);

for example,
restores handover for me.

Actions #2

Updated by keith 2 months ago

  • Project changed from OsmoBTS to OsmoBSC
Actions #3

Updated by fixeria 2 months ago

  • Related to Bug #5219: VTY cmd "bts 0 trx 0 timeslot 1 sub-slot 0 activate fr" fails on sysmobts with BSIC 10 added
Actions #4

Updated by neels 2 months ago

On Fri, Oct 01, 2021 at 03:31:55AM +0000, wrote:

The comment is
/* Use the TSC provided in the modification request, if any. Otherwise use the timeslot's configured
  • TSC. */

but for know I don't figure out where the modification request is coming from. maybe it makes some sense to neels

The comment should have said "Use the TSC provided in the activation request",
it's a copy paste error from the TSC code for Channel Mode Modify. (Patch to fix is out)

- lchan->activate.tsc = (lchan->activate.info.tsc >= 0) ? lchan->activate.info.tsc : gsm_ts_tsc(lchan->ts);
+ lchan->activate.tsc = (lchan->activate.info.tsc >= 1) ? lchan->activate.info.tsc : gsm_ts_tsc(lchan->ts);

It should actually be >= 0, gsm_data.h:627:

/* TSC to use, or -1 for automatically determining the TSC to use. Valid range is 0 to 7, as described in 3GPP * TS 45.002. */
int tsc;

But I see that the channel activation during handover fails to set tsc to -1.
Goodness, thanks for spotting this, I pretty much broke handover with the TSC refactoring!

I tweaked ttcn3 tests to detect the ill TSC in handover, and submitted a patch
to fix the TSC and help prevent future errors like this:

https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/25662
https://gerrit.osmocom.org/c/osmo-bsc/+/25659

Actions

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)