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

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">gprs_rlcmac_sched: fix incorrect SBA frame number assignment<br><br>There is a big difference between:<br><br>  if ((a = foo() != 0xffffffff)) { ... }<br><br>and<br><br>  if ((a = foo()) != 0xffffffff) { ... }<br><br>In the first case, 'a' is the result of '!=' operation, i.e. either<br>0 (false) or 1 (true).  In the second case, 'a' will hold the value<br>returned by foo(), and this is exactly what must have been used in<br>gprs_rlcmac_rcv_rts_block().<br><br>The bug was there since SBA allocation feature was added in 2012.<br><br>Change-Id: Ifd607ae8a33382e48f9d9e50a28a4bdf4eaf73a2<br>Fixes: 07e97cf8a551b05d7f5f3f9583b68b2eff0f1c23<br>Related: CID#215835<br>---<br>M src/gprs_rlcmac_sched.cpp<br>1 file changed, 1 insertion(+), 1 deletion(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/gprs_rlcmac_sched.cpp b/src/gprs_rlcmac_sched.cpp</span><br><span>index caf121f..d7958c4 100644</span><br><span>--- a/src/gprs_rlcmac_sched.cpp</span><br><span>+++ b/src/gprs_rlcmac_sched.cpp</span><br><span>@@ -448,7 +448,7 @@</span><br><span>                  block_nr, poll_fn, tbf_name(tbf_cand.poll));</span><br><span>                 usf = USF_UNUSED;</span><br><span>    /* else. check for sba */</span><br><span style="color: hsl(0, 100%, 40%);">-       } else if ((sba_fn = bts->bts->sba()->sched(trx, ts, fn, block_nr) != 0xffffffff)) {</span><br><span style="color: hsl(120, 100%, 40%);">+ } else if ((sba_fn = bts->bts->sba()->sched(trx, ts, fn, block_nr)) != 0xffffffff) {</span><br><span>                LOGP(DRLCMACSCHED, LOGL_DEBUG, "Received RTS for PDCH: TRX=%d "</span><br><span>                    "TS=%d FN=%d block_nr=%d scheduling free USF for "</span><br><span>                         "single block allocation at FN=%d\n", trx, ts, fn,</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-pcu/+/21950">change 21950</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-pcu/+/21950"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-pcu </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: Ifd607ae8a33382e48f9d9e50a28a4bdf4eaf73a2 </div>
<div style="display:none"> Gerrit-Change-Number: 21950 </div>
<div style="display:none"> Gerrit-PatchSet: 3 </div>
<div style="display:none"> Gerrit-Owner: fixeria <vyanitskiy@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: laforge <laforge@osmocom.org> </div>
<div style="display:none"> Gerrit-Reviewer: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: merged </div>