Hello Neels Hofmeyr, Jenkins Builder,

I'd like you to reexamine a change.  Please visit

    https://gerrit.osmocom.org/3760

to look at the new patch set (#17).

Simplify TS alloc: internalize TRX check

Move TRX check inside local tfi_find_free() wrapper to make main
algorithm easier to follow.

Change-Id: I02da2b8ba8c9c8815dae0e39e1fed277ca0df171
Related: OS#2282
---
M src/gprs_rlcmac_ts_alloc.cpp
1 file changed, 10 insertions(+), 11 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/60/3760/17

diff --git a/src/gprs_rlcmac_ts_alloc.cpp b/src/gprs_rlcmac_ts_alloc.cpp
index 4ab6543..57fd27b 100644
--- a/src/gprs_rlcmac_ts_alloc.cpp
+++ b/src/gprs_rlcmac_ts_alloc.cpp
@@ -374,7 +374,7 @@
 /*! Return free TFI
  *
  *  \param[in] bts Pointer to BTS struct
- *  \param[in] trx Pointer to TRX struct
+ *  \param[in] trx Optional pointer to TRX struct
  *  \param[in] ms Pointer to MS object
  *  \param[in] dir DL or UL direction
  *  \param[in] use_trx which TRX to use or -1 if it should be selected based 
on what MS uses
@@ -386,6 +386,15 @@
 {
        int tfi;
        uint8_t trx_no;
+
+       if (trx) {
+               if (use_trx >= 0 && use_trx != trx->trx_no) {
+                       LOGP(DRLCMAC, LOGL_ERROR, "- Requested incompatible TRX 
%d (current is %d)\n",
+                            use_trx, trx->trx_no);
+                       return -EINVAL;
+               }
+               use_trx = trx->trx_no;
+       }
 
        if (use_trx == -1 && ms->current_trx())
                use_trx = ms->current_trx()->trx_no;
@@ -854,16 +863,6 @@
        ul_slots = ms->reserved_ul_slots();
        first_common_ts = ms->first_common_ts();
        trx = ms->current_trx();
-
-       if (trx) {
-               if (use_trx >= 0 && use_trx != trx->trx_no) {
-                       LOGP(DRLCMAC, LOGL_ERROR,
-                               "- Requested incompatible TRX %d (current is 
%d)\n",
-                               use_trx, trx->trx_no);
-                       return -EINVAL;
-               }
-               use_trx = trx->trx_no;
-       }
 
        /* Step 2a: Find usable TRX and TFI */
        tfi = tfi_find_free(bts->bts, trx, ms, tbf->direction, use_trx, 
&trx_no);

-- 
To view, visit https://gerrit.osmocom.org/3760
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I02da2b8ba8c9c8815dae0e39e1fed277ca0df171
Gerrit-PatchSet: 17
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Owner: Max <[email protected]>
Gerrit-Reviewer: Holger Freyther <[email protected]>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: Neels Hofmeyr <[email protected]>

Reply via email to