tbf_ul: Avoid processing rx UL blocks for UL TBFs in RELEASING state
Change-Id: I1da9b665b9ed83a644ea798008d456d6298b7460
This commit is contained in:
parent
28ccf7a284
commit
061fbca2a9
|
@ -258,6 +258,19 @@ int gprs_rlcmac_ul_tbf::rcv_data_block_acknowledged(
|
|||
"V(R)=%d)\n", rlc->tfi, this->m_window.v_q(),
|
||||
this->m_window.v_r());
|
||||
|
||||
if (tbf_state(this) == TBF_ST_RELEASING) {
|
||||
/* This may happen if MAX_N3101 is hit previously, moving the UL
|
||||
* TBF to RELEASING state. Since we have an fn-advance where DL
|
||||
* blocks are scheduled in advance, we may have requested USF for
|
||||
* this UL TBF before triggering and hence we are now receiving a
|
||||
* UL block from it. If this is the case, simply ignore the block.
|
||||
*/
|
||||
LOGPTBFUL(this, LOGL_INFO,
|
||||
"UL DATA TFI=%d received (V(Q)=%d .. V(R)=%d) while in RELEASING state, discarding\n",
|
||||
rlc->tfi, this->m_window.v_q(), this->m_window.v_r());
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* process RSSI */
|
||||
gprs_rlcmac_rssi(this, rssi);
|
||||
|
||||
|
|
Loading…
Reference in New Issue