Bug #5244
closedTraining Sequence Code error on Handover into sysmobts
100%
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
Updated by keith over 2 years 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.
Updated by fixeria over 2 years 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
Updated by neels over 2 years ago
On Fri, Oct 01, 2021 at 03:31:55AM +0000, redmine@lists.osmocom.org 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
Updated by laforge over 2 years ago
neels wrote in #note-4:
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
those two patches are merged - does this mean this issue can be closed?
Updated by neels over 2 years ago
- Status changed from New to Resolved
- Assignee set to neels
- % Done changed from 0 to 100
yes, sorry