laforge has submitted this change and it was merged. ( https://gerrit.osmocom.org/c/osmo-bts/+/14568 )
Change subject: bts: Bypass T200 DCCH values for CCCH ...................................................................... bts: Bypass T200 DCCH values for CCCH Otherwise t200_ms_dcch array values are left uninitialized with random values, and passed later on to lapdm_channel_init2(). lapdm_channel_init2() will anyways fail during initial check on get_n200_dcch() and return -EINVAL, so let's not print garbage or call a function which will anyways simply return an error. Catched due to some strange values seen in log (see D0 and D3): osmo-bts/src/common/bts.c:421 (bts=0,trx=0,ts=0,ss=4) Setting T200 D0=1028672, D3=2, S0=520, S3=520 (all in ms) Related: OS#4066 Change-Id: I3d7e1883811acf97aac97325739f2ff97fc2aa08 --- M src/common/bts.c 1 file changed, 11 insertions(+), 8 deletions(-) Approvals: Jenkins Builder: Verified osmith: Looks good to me, but someone else must approve laforge: Looks good to me, approved diff --git a/src/common/bts.c b/src/common/bts.c index b912f33..f582ebd 100644 --- a/src/common/bts.c +++ b/src/common/bts.c @@ -405,6 +405,7 @@ t200_ms_dcch[DL_SAPI3] = bts->t200_ms[T200_FACCH_H] + fn_advance_ms; break; default: + /* Channels such as CCCH don't use lapdm DL, and hence no T200 is needed */ return -1; } return 0; @@ -415,14 +416,16 @@ struct lapdm_channel *lc = &lchan->lapdm_ch; int t200_ms_dcch[_NR_DL_SAPI], t200_ms_acch[_NR_DL_SAPI]; - t200_by_lchan(t200_ms_dcch, t200_ms_acch, lchan); - - LOGPLCHAN(lchan, DLLAPD, LOGL_DEBUG, "Setting T200 D0=%u, D3=%u, S0=%u, S3=%u (all in ms)\n", - t200_ms_dcch[DL_SAPI0], t200_ms_dcch[DL_SAPI3], t200_ms_acch[DL_SAPI0], t200_ms_acch[DL_SAPI3]); - - lapdm_channel_init2(lc, LAPDM_MODE_BTS, t200_ms_dcch, t200_ms_acch, lchan->type); - lapdm_channel_set_flags(lc, LAPDM_ENT_F_POLLING_ONLY); - lapdm_channel_set_l1(lc, NULL, lchan); + if (t200_by_lchan(t200_ms_dcch, t200_ms_acch, lchan) == 0) { + LOGPLCHAN(lchan, DLLAPD, LOGL_DEBUG, + "Setting T200 D0=%u, D3=%u, S0=%u, S3=%u (all in ms)\n", + t200_ms_dcch[DL_SAPI0], t200_ms_dcch[DL_SAPI3], + t200_ms_acch[DL_SAPI0], t200_ms_acch[DL_SAPI3]); + lapdm_channel_init2(lc, LAPDM_MODE_BTS, t200_ms_dcch, t200_ms_acch, lchan->type); + lapdm_channel_set_flags(lc, LAPDM_ENT_F_POLLING_ONLY); + lapdm_channel_set_l1(lc, NULL, lchan); + } + /* We still need to set Rx callback to receive RACH requests: */ lapdm_channel_set_l3(lc, lapdm_rll_tx_cb, lchan); return 0; -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/14568 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: I3d7e1883811acf97aac97325739f2ff97fc2aa08 Gerrit-Change-Number: 14568 Gerrit-PatchSet: 2 Gerrit-Owner: pespin <pes...@sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge <lafo...@gnumonks.org> Gerrit-Reviewer: osmith <osm...@sysmocom.de> Gerrit-Reviewer: pespin <pes...@sysmocom.de> Gerrit-MessageType: merged