pespin has uploaded this change for review.
tbf_ul: Avoid processing rx UL bocks for UL TBFs in RELEASING state
Change-Id: I1da9b665b9ed83a644ea798008d456d6298b7460
---
M src/tbf_ul.cpp
1 file changed, 21 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/15/33415/1
diff --git a/src/tbf_ul.cpp b/src/tbf_ul.cpp
index 9a139ba..4a5df6b 100644
--- a/src/tbf_ul.cpp
+++ b/src/tbf_ul.cpp
@@ -258,6 +258,18 @@
"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 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());
+ }
+
/* process RSSI */
gprs_rlcmac_rssi(this, rssi);
To view, visit change 33415. To unsubscribe, or for help writing mail filters, visit settings.