aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPau Espin Pedrol <pespin@sysmocom.de>2023-09-14 21:23:22 +0200
committerPau Espin Pedrol <pespin@sysmocom.de>2023-09-15 00:06:57 +0200
commit09dc6b21e2332e65d1fec2c9ceeb085703d2928a (patch)
tree4b64557c8d44cd2e01fcd3cbcc8e121dc3a1aa45
parent3ef173b980eba8571c0f9193483e3b7dd555a819 (diff)
tbf_dl_fsm: Fix assert hit due to EV_MAX_N3105 received in ST_RELEASING
That code path was incorrectly removed a few commits back, re-add it. Fixes: 40a297f3b0c8e1670d46a4974750dd3335bc7885 Change-Id: I27e61dc4b3396360327dcd377d171daa30684d23
-rw-r--r--src/tbf_dl_fsm.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/tbf_dl_fsm.c b/src/tbf_dl_fsm.c
index 8d95d14a..917c4b15 100644
--- a/src/tbf_dl_fsm.c
+++ b/src/tbf_dl_fsm.c
@@ -305,6 +305,14 @@ static void st_wait_release(struct osmo_fsm_inst *fi, uint32_t event, void *data
* already ACKED since we left ST_FINISHED. This happens due to
* fn-advance scheduling several DL blocks in advance. */
break;
+ case TBF_EV_MAX_N3105:
+ /* Triggered potentially by a poll timeout of PKT UL/DL TBF ASS.
+ * Reached N3105, the MS is not responding, so stop attempting
+ * using the TBF for DL assignment and change to ST_RELEASING in
+ * order to simply wait until resources can be reused (see
+ * st_releasing_on_enter()). */
+ tbf_dl_fsm_state_chg(fi, TBF_ST_RELEASING);
+ break;
default:
OSMO_ASSERT(0);
}