Bug #3671
closedosmo-bts-sysmo and TTCN3 BTS_Tests f_est_dchan does not check for Chan Required
100%
Description
As a result, if RACH is not received (real HW setup), some tests fail sometimes afterwards (confusing) because Assignment Command is sent BSC->BTS and BTS doesn't forward it because presumably it didn't receive the Rach Request before.
In that scenario, I don't see any Immediate Assignment BTS->MS being forwarded in GSMTAP, but I see some data being sent in lower layers.
I attach a tgz with both correct and incorrect test BTS_Tests.TC_chan_act_a53 runs. Strangely enough, I don't see any message about it being dropped/hidden from GSMTAP in bts logs.
fail: 20180901161922277 DL1P <0007> /home/pespin/dev/sysmocom/git/osmo-bts/src/common/l1sap.c:752 000312/00/00/06/04 Rx PH-RTS.ind chan_nr=PCH/AGCH on TS0 link_id=0x00d 20180901161922277 DL1P <0007> /home/pespin/dev/sysmocom/git/osmo-bts/src/common/l1sap.c:856 000312/00/00/06/04 Tx PH-DATA.req chan_nr=PCH/AGCH on TS0 link_id=0x00 20180901161922277 DL1P <0007> /home/pespin/dev/sysmocom/git/osmo-bts/src/osmo-bts-sysmo/l1_if.c:459 000312/00/00/06/04 PH-DATA.req(01 06 3f 00 09 e3 64 17 01 ea 00 00 00 00 00 00 4e 63 68 00 00 00 00 ) 20180901161922304 DL1P <0007> /home/pespin/dev/sysmocom/git/osmo-bts/src/common/l1sap.c:752 000318/00/06/12/10 Rx PH-RTS.ind chan_nr=PCH/AGCH on TS0 link_id=0x00d 20180901161922305 DL1P <0007> /home/pespin/dev/sysmocom/git/osmo-bts/src/common/l1sap.c:856 000318/00/06/12/10 Tx PH-DATA.req chan_nr=PCH/AGCH on TS0 link_id=0x00 20180901161922305 DL1P <0007> /home/pespin/dev/sysmocom/git/osmo-bts/src/osmo-bts-sysmo/l1_if.c:459 000318/00/06/12/10 PH-DATA.req(15 06 21 00 01 f0 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b ) success: 20180901162203656 DL1P <0007> /home/pespin/dev/sysmocom/git/osmo-bts/src/common/l1sap.c:752 002811/02/03/06/43 Rx PH-RTS.ind chan_nr=PCH/AGCH on TS0 link_id=0x00d 20180901162203656 DL1P <0007> /home/pespin/dev/sysmocom/git/osmo-bts/src/common/l1sap.c:856 002811/02/03/06/43 Tx PH-DATA.req chan_nr=PCH/AGCH on TS0 link_id=0x00 20180901162203656 DL1P <0007> /home/pespin/dev/sysmocom/git/osmo-bts/src/osmo-bts-sysmo/l1_if.c:459 002811/02/03/06/43 PH-DATA.req(01 06 3f 00 09 e3 64 17 10 a3 00 00 00 00 00 00 4e 63 68 00 00 00 00 ) 20180901162203683 DL1P <0007> /home/pespin/dev/sysmocom/git/osmo-bts/src/common/l1sap.c:752 002817/02/09/12/01 Rx PH-RTS.ind chan_nr=PCH/AGCH on TS0 link_id=0x00d 20180901162203684 DL1P <0007> /home/pespin/dev/sysmocom/git/osmo-bts/src/common/l1sap.c:856 002817/02/09/12/01 Tx PH-DATA.req chan_nr=PCH/AGCH on TS0 link_id=0x00 20180901162203684 DL1P <0007> /home/pespin/dev/sysmocom/git/osmo-bts/src/osmo-bts-sysmo/l1_if.c:459 002817/02/09/12/01 PH-DATA.req(15 06 21 00 01 f0 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b )
I tried waiting for that message in TTCN3 but it fails because apparently RSL_CCHAN is somehow attached to component "test_CT" and can only be used on functions with "runs on test_CT", but this function is already attached to "ConnHdlr".
diff --git a/bts/BTS_Tests.ttcn b/bts/BTS_Tests.ttcn index 5b073ef..a88d02f 100644 --- a/bts/BTS_Tests.ttcn +++ b/bts/BTS_Tests.ttcn @@ -1353,8 +1353,7 @@ private function f_est_dchan(boolean encr_enable := false) runs on ConnHdlr { f_L1CTL_PARAM(L1CTL, g_pars.l1_pars.ms_actual_ta, g_pars.l1_pars.ms_power_level); fn := f_L1CTL_RACH(L1CTL, ra); - /* This arrives on CCHAN, so we cannot test for receiving CHAN RQDhere */ - //RSL.receive(tr_RSL_CHAN_RQD(int2oct(23,1))); + RSL_CCHAN.receive(tr_RSL_UD(tr_RSL_CHAN_RQD(int2oct(ra,1))));So 2 thing shere:
- Make it possible to stop tests early during f_est_dchan if no RACH/ChanRequired is received in RSL.
- Find out why Immediate assignment is not shown in GSMTAP when there was no RACH beforehand, and why BTS doesn't print an error in that case.
Files