This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
pespin gerrit-no-reply at lists.osmocom.orgpespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-pcu/+/25046 ) Change subject: Move WAIT_RELEASE tbf_state transition to tbf_fsm ...................................................................... Move WAIT_RELEASE tbf_state transition to tbf_fsm Related: OS#2709 Change-Id: Iebd650c1036ef2d5132789778be7117ce3391c01 --- M src/tbf_dl.cpp M src/tbf_dl.h M src/tbf_fsm.c M src/tbf_fsm.h M tests/tbf/TbfTest.err 5 files changed, 56 insertions(+), 9 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/46/25046/1 diff --git a/src/tbf_dl.cpp b/src/tbf_dl.cpp index ed5003c..6614366 100644 --- a/src/tbf_dl.cpp +++ b/src/tbf_dl.cpp @@ -1219,8 +1219,9 @@ } -int gprs_rlcmac_dl_tbf::maybe_start_new_window() +int gprs_rlcmac_dl_tbf::rcvd_dl_final_ack() { + osmo_fsm_inst_dispatch(this->state_fsm.fi, TBF_EV_FINAL_ACK_RECVD, NULL); release(); /* check for LLC PDU in the LLC Queue */ @@ -1241,8 +1242,6 @@ /* report all outstanding packets as received */ gprs_rlcmac_received_lost(this, received, 0); - TBF_SET_STATE(this, TBF_ST_WAIT_RELEASE); - /* start T3193 */ T_START(this, T3193, 3193, "release (DL-TBF)", true); @@ -1292,7 +1291,7 @@ if (final_ack) { LOGPTBFDL(this, LOGL_DEBUG, "Final ACK received.\n"); - rc = maybe_start_new_window(); + rc = rcvd_dl_final_ack(); } else if (state_is(TBF_ST_FINISHED) && m_window.window_empty()) { LOGPTBFDL(this, LOGL_NOTICE, "Received acknowledge of all blocks, but without final ack indication (don't worry)\n"); @@ -1309,7 +1308,7 @@ return update_window(ssn, rbb); LOGPTBFDL(this, LOGL_DEBUG, "Final ACK received.\n"); - return maybe_start_new_window(); + return rcvd_dl_final_ack(); } bool gprs_rlcmac_dl_tbf::dl_window_stalled() const diff --git a/src/tbf_dl.h b/src/tbf_dl.h index 58d863b..af82a0c 100644 --- a/src/tbf_dl.h +++ b/src/tbf_dl.h @@ -110,7 +110,7 @@ int index, int index2 = -1); int update_window(const uint8_t ssn, const uint8_t *rbb); int update_window(unsigned first_bsn, const struct bitvec *rbb); - int maybe_start_new_window(); + int rcvd_dl_final_ack(); bool dl_window_stalled() const; void reuse_tbf(); void start_llc_timer(); diff --git a/src/tbf_fsm.c b/src/tbf_fsm.c index 3322857..52de913 100644 --- a/src/tbf_fsm.c +++ b/src/tbf_fsm.c @@ -49,6 +49,7 @@ { TBF_EV_ASSIGN_READY_CCCH, "ASSIGN_READY_CCCH" }, { TBF_EV_LAST_DL_DATA_SENT, "LAST_DL_DATA_SENT" }, { TBF_EV_LAST_UL_DATA_RECVD, "LAST_UL_DATA_RECVD" }, + { TBF_EV_FINAL_ACK_RECVD, "FINAL_ACK_RECVD" }, { 0, NULL } }; @@ -149,6 +150,27 @@ /* All data has been sent or received, change state to FINISHED */ tbf_fsm_state_chg(fi, TBF_ST_FINISHED); break; + case TBF_EV_FINAL_ACK_RECVD: + /* We received Final Ack (DL ACK/NACK) from MS. move to + WAIT_RELEASE, we wait there for release or re-use the TBF in + case we receive more DL data to tx */ + tbf_fsm_state_chg(fi, TBF_ST_WAIT_RELEASE); + break; + default: + OSMO_ASSERT(0); + } +} + +static void st_finished(struct osmo_fsm_inst *fi, uint32_t event, void *data) +{ + //struct tbf_fsm_ctx *ctx = (struct tbf_fsm_ctx *)fi->priv; + switch (event) { + case TBF_EV_FINAL_ACK_RECVD: + /* We received Final Ack (DL ACK/NACK) from MS. move to + WAIT_RELEASE, we wait there for release or re-use the TBF in + case we receive more DL data to tx */ + tbf_fsm_state_chg(fi, TBF_ST_WAIT_RELEASE); + break; default: OSMO_ASSERT(0); } @@ -199,7 +221,8 @@ [TBF_ST_FLOW] = { .in_event_mask = X(TBF_EV_LAST_DL_DATA_SENT) | - X(TBF_EV_LAST_UL_DATA_RECVD), + X(TBF_EV_LAST_UL_DATA_RECVD) | + X(TBF_EV_FINAL_ACK_RECVD), .out_state_mask = X(TBF_ST_FINISHED) | X(TBF_ST_WAIT_RELEASE) | @@ -210,12 +233,12 @@ }, [TBF_ST_FINISHED] = { .in_event_mask = - 0, + X(TBF_EV_FINAL_ACK_RECVD), .out_state_mask = X(TBF_ST_WAIT_RELEASE), .name = "FINISHED", //.onenter = st_finished_on_enter, - //.action = st_finished, + .action = st_finished, }, [TBF_ST_WAIT_RELEASE] = { .in_event_mask = diff --git a/src/tbf_fsm.h b/src/tbf_fsm.h index f4f5ad7..449a04a 100644 --- a/src/tbf_fsm.h +++ b/src/tbf_fsm.h @@ -35,6 +35,7 @@ TBF_EV_ASSIGN_READY_CCCH, /* TBF Start Time timer triggered */ TBF_EV_LAST_DL_DATA_SENT, /* DL TBF sends RLCMAC block containing last DL avilable data buffered */ TBF_EV_LAST_UL_DATA_RECVD, /* UL TBF sends RLCMAC block containing last UL data (cv=0) */ + TBF_EV_FINAL_ACK_RECVD, /* DL ACK/NACK with FINAL_ACK=1 received from MS */ }; enum tbf_fsm_states { diff --git a/tests/tbf/TbfTest.err b/tests/tbf/TbfTest.err index ccfd459..c6cea78 100644 --- a/tests/tbf/TbfTest.err +++ b/tests/tbf/TbfTest.err @@ -101,6 +101,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW) msg block (BSN 1, CS-1): 07 00 03 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=2654167 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -206,6 +207,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW) msg block (BSN 1, CS-1): 07 00 03 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=2654167 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -497,6 +499,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FINISHED) msg block (BSN 21, CS-1): 0f 01 2a 4d 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FINISHED) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FINISHED) Final ACK received. +TBF(DL-TFI_0){FINISHED}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FINISHED}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=2654167 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -3026,6 +3029,7 @@ TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=FINISHED) DL analysis, range=0:28, lost=0, recv=28, skipped=0, bsn=0, info='RRRRRRRRRRRRRRRRRRRRRRRRRRRR....................................' TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=FINISHED) V(B): (V(A)=28)""(V(S)-1=27) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=FINISHED) Final ACK received. +TBF(DL-TFI_0){FINISHED}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FINISHED}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=WAIT_RELEASE) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=2654379 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -4063,6 +4067,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) N3105 2 => 3 (< MAX 8) TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE EGPRS) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=112 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -4312,6 +4317,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) N3105 1 => 2 (< MAX 8) TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE EGPRS) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=91 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -4521,6 +4527,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) N3105 1 => 2 (< MAX 8) TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE EGPRS) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=69 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -4714,6 +4721,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) N3105 1 => 2 (< MAX 8) TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE EGPRS) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=60 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -4891,6 +4899,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) N3105 1 => 2 (< MAX 8) TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE EGPRS) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=52 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -5044,6 +5053,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) N3105 1 => 2 (< MAX 8) TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE EGPRS) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=39 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -5206,6 +5216,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) N3105 1 => 2 (< MAX 8) TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE EGPRS) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=34 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -5359,6 +5370,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) N3105 1 => 2 (< MAX 8) TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE EGPRS) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=30 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -5501,6 +5513,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) N3105 1 => 2 (< MAX 8) TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE EGPRS) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=26 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -5570,6 +5583,7 @@ Detected FN jump! 2654167 -> 58 TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE EGPRS) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=58 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -5636,6 +5650,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) msg block (BSN 0, MCS-1): 07 00 00 98 00 02 04 06 08 0a 0c 0e 10 12 14 16 18 1a 1c 1e 20 22 24 26 28 2a 00 TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE EGPRS) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=58 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -5702,6 +5717,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) msg block (BSN 0, MCS-2): 07 00 00 94 00 02 04 06 08 0a 0c 0e 10 12 14 16 18 1a 1c 1e 20 22 24 26 28 2a 2c 2e 30 32 34 36 00 TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE EGPRS) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=58 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -5791,6 +5807,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) N3105 0 => 1 (< MAX 8) TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE EGPRS) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=63 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -5879,6 +5896,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) N3105 0 => 1 (< MAX 8) TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE EGPRS) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=63 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -5967,6 +5985,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) N3105 0 => 1 (< MAX 8) TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE EGPRS) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=63 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -6055,6 +6074,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) N3105 0 => 1 (< MAX 8) TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE EGPRS) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=63 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -6130,6 +6150,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) msg block (BSN 0, MCS-3): 07 00 00 e6 4a 4c 4e 50 52 54 56 58 5a 5c 5e 60 62 64 66 68 6a 6c 6e 70 72 74 76 78 7a 7c 7e 80 82 84 86 88 8a 8c 8e 90 92 00 TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE EGPRS) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=2654167 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -6203,6 +6224,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) msg block (BSN 0, MCS-2): 07 00 00 f2 38 3a 3c 3e 40 42 44 46 48 4a 4c 4e 50 52 54 56 58 5a 5c 5e 60 62 64 66 68 6a 6c 6e 00 TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE EGPRS) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=2654167 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -6276,6 +6298,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) msg block (BSN 0, MCS-1): 07 00 00 f6 2c 2e 30 32 34 36 38 3a 3c 3e 40 42 44 46 48 4a 4c 4e 50 52 54 56 00 TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE EGPRS) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=2654167 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH @@ -6356,6 +6379,7 @@ TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) msg block (BSN 0, MCS-6): 07 00 00 10 40 80 c0 00 41 81 c1 01 42 82 c2 02 43 83 c3 03 44 84 c4 04 45 85 c5 05 46 86 c6 06 47 87 c7 07 48 88 c8 08 49 89 c9 09 4a 8a ca 0a 4b 8b cb 0b 4c 8c cc 0c 4d 8d cd 0d 4e 8e ce 0e 4f 8f cf 0f 50 90 d0 10 51 91 d1 11 52 12 TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) downlink acknowledge TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW EGPRS) Final ACK received. +TBF(DL-TFI_0){FLOW}: Received Event FINAL_ACK_RECVD TBF(DL-TFI_0){FLOW}: state_chg to WAIT_RELEASE TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT_RELEASE EGPRS) starting timer T3193 [release (DL-TBF)] with 0 sec. 100000 microsec, cur_fn=2654167 TBF(DL-TFI_0){WAIT_RELEASE}: Received Event ASSIGN_DEL_CCCH -- To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/25046 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-pcu Gerrit-Branch: master Gerrit-Change-Id: Iebd650c1036ef2d5132789778be7117ce3391c01 Gerrit-Change-Number: 25046 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin at sysmocom.de> Gerrit-MessageType: newchange -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20210726/0f25d00e/attachment.htm>