Stop abusing T3169

Now that we finally handle N3101 and N3103 correctly, we can fix abuse
of T3169 we were doing to make sure TBFs were freed.

According to 3GPP TS 44.060, T3169 should be armed:
* N3101_MAX reached
* N3103_MAX reached

Furthermore, when T3169 is enabled, the tbf should be in state
RELEASING so that its USF is not used.

See full description: https://osmocom.org/issues/5033#note-2

Related: OS#5033
Change-Id: I2cec531e2633281b88f69ba065c0105580c81076
changes/72/23872/2
Pau Espin 2 years ago
parent 710e0e9ad8
commit 846fd248dc
  1. 1
      src/bts.cpp
  2. 4
      src/tbf_ul.cpp
  3. 250
      tests/tbf/TbfTest.err

@ -876,7 +876,6 @@ int bts_rcv_rach(struct gprs_rlcmac_bts *bts, const struct rach_ind_params *rip)
tbf->set_ta(ta);
TBF_SET_STATE(tbf, GPRS_RLCMAC_FLOW);
TBF_ASS_TYPE_SET(tbf, GPRS_RLCMAC_FLAG_CCCH);
T_START(tbf, T3169, 3169, "RACH (new UL-TBF)", true);
trx_no = tbf->trx->trx_no;
ts_no = tbf->first_ts;
usf = tbf->m_usf[ts_no];

@ -156,7 +156,6 @@ gprs_rlcmac_ul_tbf *tbf_alloc_ul(struct gprs_rlcmac_bts *bts, GprsMs *ms, int8_t
}
tbf->m_contention_resolution_done = 1;
TBF_SET_ASS_ON(tbf, GPRS_RLCMAC_FLAG_PACCH, false);
T_START(tbf, T3169, 3169, "allocation (UL-TBF)", true);
tbf->update_ms(tlli, GPRS_RLCMAC_UL_TBF);
OSMO_ASSERT(tbf->ms());
@ -361,9 +360,6 @@ int gprs_rlcmac_ul_tbf::rcv_data_block_acknowledged(
uint32_t new_tlli = GSM_RESERVED_TMSI;
unsigned int block_idx;
/* restart T3169 */
T_START(this, T3169, 3169, "acked (data)", true);
/* Increment RX-counter */
this->m_rx_counter++;
update_coding_scheme_counter_ul(rlc->cs);

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save