aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/gprs_rlcmac_ts_alloc.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/gprs_rlcmac_ts_alloc.cpp b/src/gprs_rlcmac_ts_alloc.cpp
index 338362c6..1819b5b5 100644
--- a/src/gprs_rlcmac_ts_alloc.cpp
+++ b/src/gprs_rlcmac_ts_alloc.cpp
@@ -551,9 +551,11 @@ static int find_multi_slots(struct gprs_rlcmac_bts *bts,
}
/* Only consider common slots for UL */
if (tx_window & rx_window & (1 << ts)) {
- c = 32 - pdch->num_reserved(GPRS_RLCMAC_UL_TBF);
- c = OSMO_MAX(c, 1);
- capacity += c;
+ if (find_free_usf(pdch) >= 0) {
+ c = 32 - pdch->num_reserved(GPRS_RLCMAC_UL_TBF);
+ c = OSMO_MAX(c, 1);
+ capacity += c;
+ }
}
}