Actions
Bug #3706
closedosmo-bts-trx: PDCH DEACT ACK is sent before receiving response from TRX
Start date:
11/23/2018
Due date:
% Done:
100%
Spec Reference:
Description
From osmo-gsm-tester test, after using GPRS we want to place a call, so PDCH is deactivated in favour of TCH/F:
20181123044720655 DRLL <0002> rsl.c:2523 (bts=0,trx=0,ts=0,ss=0) Rx RLL DATA_REQ Abis -> LAPDm 20181123044720700 DRSL <0000> rsl.c:2805 (bts=0,trx=0,ts=6,pchan=TCH/F_PDCH as PDCH) ss=0 Rx RSL IPAC_PDCH_DEACT 20181123044720700 DRSL <0000> rsl.c:2205 (bts=0,trx=0,ts=6,pchan=TCH/F_PDCH as PDCH) Request to PDCH DEACT, but lchan is still active 20181123044720700 DRSL <0000> rsl.c:2131 (bts=0,trx=0,ts=6,ss=0) Tx PDCH DEACT NACK (cause = 0x0f) <------ // EXTRA NACK SHOULD BE GONE WITH https://gerrit.osmocom.org/#/c/osmo-bts/+/11904/ 20181123044720700 DPCU <0009> pcu_sock.c:124 Sending info 20181123044720700 DPCU <0009> pcu_sock.c:139 BTS is up 20181123044720700 DPCU <0009> pcu_sock.c:232 trx=0 ts=7: available (tsc=7 arfcn=868) 20181123044720703 DPCU <0009> pcu_sock.c:608 Deactivate request received: TRX=0 TX=6 20181123044720703 DL1C <0006> l1sap.c:1519 deactivating channel chan_nr=TCH/F on TS6 trx=0 20181123044720703 DTRX <000b> trx_if.c:242 Enqueuing TRX control command 'CMD NOHANDOVER 6 0' 20181123044720703 DL1C <0006> l1sap.c:648 deactivate confirm chan_nr=TCH/F on TS6 trx=0 20181123044720703 DRSL <0000> rsl.c:714 (bts=0,trx=0,ts=6,ss=0) not sending REL ACK 20181123044720703 DRSL <0000> rsl.c:2264 (bts=0,trx=0,ts=6,ss=0) PDCH DEACT operation: channel disconnected, will reconnect as TCH 20181123044720703 DL1C <0006> scheduler.c:593 Configuring multiframe with TCH/F+SACCH trx=0 ts=6 20181123044720703 DTRX <000b> trx_if.c:242 Enqueuing TRX control command 'CMD SETSLOT 6 1' <------ HERE WE ASK TRX TO CONFIGURE TS 6 AS TCH/F 20181123044720703 DL1C <0006> l1_if.c:780 (bts=0,trx=0,ts=6) bts_model_ts_connect(as_pchan=TCH/F) success, calling cb_ts_connected() <--- HER WE CONFIRM UPPER LAYERS WITHOUT WAITING FOR ACK FROM TRX 20181123044720703 DRSL <0000> rsl.c:2339 (bts=0,trx=0,ts=6,ss=0) PDCH DEACT operation: timeslot connected as TCH/F 20181123044720703 DRSL <0000> rsl.c:2440 (bts=0,trx=0,ts=6,ss=0) TCH/F_PDCH switched to TCH/F mode (ts->flags == 0) 20181123044720703 DRSL <0000> rsl.c:2103 (bts=0,trx=0,ts=6,ss=0) Tx PDCH DEACT ACK <---- HERE BTS-TRX CONFIRMS EVERYTHING WENT FINE TO BSC.... BEFORE HAVING CONFIRMATION FROM TRX 20181123044720704 DTRX <000b> trx_if.c:492 Response message: 'RSP NOHANDOVER 0 6' 20181123044720705 DTRX <000b> trx_if.c:492 Response message: 'RSP SETSLOT 0 6 1' <---- FINALLY CONFIRMATION ARRIVED, WE DON'T CARE NOWADAYS
Since recently, we can parse and submit RSP from TRX CTRL IF to upper layers in osmo-bts-trx (see trx_ctrl_rx_rsp
). Let's use this to wait to send the PDCH DEACT ACK once we have an answer from TRX that chan was set up correctly.
Files
Related issues
Actions