sba: Reverse TS search order

Currently the search for an enabled PDCH slot for SBA start with the
first TS. If there are more than 2 PDCH slots enabled, this slot will
conflict with an existing multislot reservation for most multislot
classes. This were less likely if the search were reversed and
started with the last slot due to the 3 slot shift between Tx and Rx.

When multislot allocation is enabled and several MS are connected,
and increased rate of poll timeouts can be observed.

This commit tries to reduce the number of poll timeouts by reverting
the slot search order for SBA allocation.

Sponsored-by: On-Waves ehf
This commit is contained in:
Jacob Erlbeck 2015-07-02 13:19:49 +02:00
parent 1653f837e3
commit 506f156f7a
1 changed files with 2 additions and 2 deletions

View File

@ -48,7 +48,7 @@ int SBAController::alloc(
struct gprs_rlcmac_pdch *pdch;
struct gprs_rlcmac_sba *sba;
uint8_t trx, ts;
int8_t trx, ts;
uint32_t fn;
sba = talloc_zero(tall_pcu_ctx, struct gprs_rlcmac_sba);
@ -56,7 +56,7 @@ int SBAController::alloc(
return -ENOMEM;
for (trx = 0; trx < 8; trx++) {
for (ts = 0; ts < 8; ts++) {
for (ts = 7; ts >= 0; ts--) {
pdch = &m_bts.bts_data()->trx[trx].pdch[ts];
if (!pdch->is_enabled())
continue;