<p>laforge <strong>merged</strong> this change.</p><p><a href="https://gerrit.osmocom.org/c/osmo-bts/+/14568">View Change</a></p><div style="white-space:pre-wrap">Approvals:
  Jenkins Builder: Verified
  osmith: Looks good to me, but someone else must approve
  laforge: Looks good to me, approved

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">bts: Bypass T200 DCCH values for CCCH<br><br>Otherwise t200_ms_dcch array values are left uninitialized with random<br>values, and passed later on to lapdm_channel_init2().<br><br>lapdm_channel_init2() will anyways fail during initial check on<br>get_n200_dcch() and return -EINVAL, so let's not print garbage or call a<br>function which will anyways simply return an error.<br><br>Catched due to some strange values seen in log (see D0 and D3):<br>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)<br><br>Related: OS#4066<br>Change-Id: I3d7e1883811acf97aac97325739f2ff97fc2aa08<br>---<br>M src/common/bts.c<br>1 file changed, 11 insertions(+), 8 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/common/bts.c b/src/common/bts.c</span><br><span>index b912f33..f582ebd 100644</span><br><span>--- a/src/common/bts.c</span><br><span>+++ b/src/common/bts.c</span><br><span>@@ -405,6 +405,7 @@</span><br><span>            t200_ms_dcch[DL_SAPI3] = bts->t200_ms[T200_FACCH_H] + fn_advance_ms;</span><br><span>              break;</span><br><span>       default:</span><br><span style="color: hsl(120, 100%, 40%);">+              /* Channels such as CCCH don't use lapdm DL, and hence no T200 is needed */</span><br><span>              return -1;</span><br><span>   }</span><br><span>    return 0;</span><br><span>@@ -415,14 +416,16 @@</span><br><span>    struct lapdm_channel *lc = &lchan->lapdm_ch;</span><br><span>  int t200_ms_dcch[_NR_DL_SAPI], t200_ms_acch[_NR_DL_SAPI];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-   t200_by_lchan(t200_ms_dcch, t200_ms_acch, lchan);</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-       LOGPLCHAN(lchan, DLLAPD, LOGL_DEBUG, "Setting T200 D0=%u, D3=%u, S0=%u, S3=%u (all in ms)\n",</span><br><span style="color: hsl(0, 100%, 40%);">-           t200_ms_dcch[DL_SAPI0], t200_ms_dcch[DL_SAPI3], t200_ms_acch[DL_SAPI0], t200_ms_acch[DL_SAPI3]);</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-      lapdm_channel_init2(lc, LAPDM_MODE_BTS, t200_ms_dcch, t200_ms_acch, lchan->type);</span><br><span style="color: hsl(0, 100%, 40%);">-    lapdm_channel_set_flags(lc, LAPDM_ENT_F_POLLING_ONLY);</span><br><span style="color: hsl(0, 100%, 40%);">-  lapdm_channel_set_l1(lc, NULL, lchan);</span><br><span style="color: hsl(120, 100%, 40%);">+        if (t200_by_lchan(t200_ms_dcch, t200_ms_acch, lchan) == 0) {</span><br><span style="color: hsl(120, 100%, 40%);">+          LOGPLCHAN(lchan, DLLAPD, LOGL_DEBUG,</span><br><span style="color: hsl(120, 100%, 40%);">+                    "Setting T200 D0=%u, D3=%u, S0=%u, S3=%u (all in ms)\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                    t200_ms_dcch[DL_SAPI0], t200_ms_dcch[DL_SAPI3],</span><br><span style="color: hsl(120, 100%, 40%);">+                       t200_ms_acch[DL_SAPI0], t200_ms_acch[DL_SAPI3]);</span><br><span style="color: hsl(120, 100%, 40%);">+            lapdm_channel_init2(lc, LAPDM_MODE_BTS, t200_ms_dcch, t200_ms_acch, lchan->type);</span><br><span style="color: hsl(120, 100%, 40%);">+          lapdm_channel_set_flags(lc, LAPDM_ENT_F_POLLING_ONLY);</span><br><span style="color: hsl(120, 100%, 40%);">+                lapdm_channel_set_l1(lc, NULL, lchan);</span><br><span style="color: hsl(120, 100%, 40%);">+        }</span><br><span style="color: hsl(120, 100%, 40%);">+     /* We still need to set Rx callback to receive RACH requests: */</span><br><span>     lapdm_channel_set_l3(lc, lapdm_rll_tx_cb, lchan);</span><br><span> </span><br><span>        return 0;</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-bts/+/14568">change 14568</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/c/osmo-bts/+/14568"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-bts </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: I3d7e1883811acf97aac97325739f2ff97fc2aa08 </div>
<div style="display:none"> Gerrit-Change-Number: 14568 </div>
<div style="display:none"> Gerrit-PatchSet: 2 </div>
<div style="display:none"> Gerrit-Owner: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: laforge <laforge@gnumonks.org> </div>
<div style="display:none"> Gerrit-Reviewer: osmith <osmith@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: merged </div>