diff --git a/src/tbf.cpp b/src/tbf.cpp index 4b785956..99d1018f 100644 --- a/src/tbf.cpp +++ b/src/tbf.cpp @@ -734,9 +734,10 @@ const char *gprs_rlcmac_tbf::name() const void tbf_update_state_fsm_name(struct gprs_rlcmac_tbf *tbf) { char buf[64]; + int8_t tfi = (tbf_tfi(tbf) == TBF_TS_UNSET) ? -1 : tbf_tfi(tbf); snprintf(buf, sizeof(buf), "%s-TFI_%d", tbf_direction(tbf) == GPRS_RLCMAC_UL_TBF ? "UL" : "DL", - tbf_tfi(tbf)); + tfi); osmo_identifier_sanitize_buf(buf, NULL, '_'); osmo_fsm_inst_update_id(tbf->state_fsm.fi, buf); diff --git a/src/tbf_ul.cpp b/src/tbf_ul.cpp index ca929eae..f0d16b51 100644 --- a/src/tbf_ul.cpp +++ b/src/tbf_ul.cpp @@ -221,6 +221,7 @@ struct gprs_rlcmac_ul_tbf *handle_tbf_reject(struct gprs_rlcmac_bts *bts, talloc_free(ul_tbf); return NULL; } + tbf_update_state_fsm_name(ul_tbf); ms_attach_tbf(ms, ul_tbf); llist_add(tbf_trx_list((struct gprs_rlcmac_tbf *)ul_tbf), &trx->ul_tbfs); diff --git a/tests/tbf/TbfTest.err b/tests/tbf/TbfTest.err index 7d2d5347..c440499d 100644 --- a/tests/tbf/TbfTest.err +++ b/tests/tbf/TbfTest.err @@ -9078,12 +9078,12 @@ DL_ASS_TBF{NONE}: Allocated UL_ACK_TBF{NONE}: Allocated TBF(TFI=-1 TLLI=0xffeeddd3 DIR=UL STATE=NEW) Setting Control TS 7 MS(TLLI=0xffeeddd3, IMSI=, TA=7, 11/11,) Attaching UL TBF: TBF(TFI=-1 TLLI=0xffeeddd3 DIR=UL STATE=NEW) -TBF{NEW}: Received Event ASSIGN_ADD_PACCH +TBF(UL-TFI_-1){NEW}: Received Event ASSIGN_ADD_PACCH TBF(TFI=-1 TLLI=0xffeeddd3 DIR=UL STATE=NEW) set ass. type PACCH [prev CCCH:0, PACCH:0] -TBF{NEW}: state_chg to ASSIGN +TBF(UL-TFI_-1){NEW}: state_chg to ASSIGN TBF(TFI=-1 TLLI=0xffeeddd3 DIR=UL STATE=ASSIGN) Starting timer X2001 [assignment (PACCH)] with 2 sec. 0 microsec -UL_ASS_TBF{NONE}: Received Event SCHED_ASS_REJ -UL_ASS_TBF{NONE}: state_chg to SEND_ASS_REJ +UL_ASS_TBF(UL-TFI_-1){NONE}: Received Event SCHED_ASS_REJ +UL_ASS_TBF(UL-TFI_-1){NONE}: state_chg to SEND_ASS_REJ PDCH(bts=0,trx=0,ts=7) Expiring FN=82 but previous FN=2654231 is still reserved! PDCH(bts=0,trx=0,ts=7) Timeout for registered POLL (FN=2654231, reason=UL_ASS): TBF(TFI=6 TLLI=0xffeeddd2 DIR=UL STATE=ASSIGN EGPRS) TBF(TFI=6 TLLI=0xffeeddd2 DIR=UL STATE=ASSIGN EGPRS) poll timeout for FN=2654231, TS=7 (curr FN 82) @@ -9109,23 +9109,23 @@ DL_ASS_TBF{NONE}: Allocated UL_ACK_TBF{NONE}: Allocated TBF(TFI=-1 TLLI=0xffeeddcc DIR=UL STATE=NEW) Setting Control TS 7 MS(TLLI=0xffeeddcc, IMSI=, TA=220, 0/0,) Attaching UL TBF: TBF(TFI=-1 TLLI=0xffeeddcc DIR=UL STATE=NEW) -TBF{NEW}: Received Event ASSIGN_ADD_PACCH +TBF(UL-TFI_-1){NEW}: Received Event ASSIGN_ADD_PACCH TBF(TFI=-1 TLLI=0xffeeddcc DIR=UL STATE=NEW) set ass. type PACCH [prev CCCH:0, PACCH:0] -TBF{NEW}: state_chg to ASSIGN +TBF(UL-TFI_-1){NEW}: state_chg to ASSIGN TBF(TFI=-1 TLLI=0xffeeddcc DIR=UL STATE=ASSIGN) Starting timer X2001 [assignment (PACCH)] with 2 sec. 0 microsec -UL_ASS_TBF{NONE}: Received Event SCHED_ASS_REJ -UL_ASS_TBF{NONE}: state_chg to SEND_ASS_REJ -UL_ASS_TBF{SEND_ASS_REJ}: Received Event CREATE_RLCMAC_MSG -UL_ASS_TBF{SEND_ASS_REJ}: state_chg to NONE +UL_ASS_TBF(UL-TFI_-1){NONE}: Received Event SCHED_ASS_REJ +UL_ASS_TBF(UL-TFI_-1){NONE}: state_chg to SEND_ASS_REJ +UL_ASS_TBF(UL-TFI_-1){SEND_ASS_REJ}: Received Event CREATE_RLCMAC_MSG +UL_ASS_TBF(UL-TFI_-1){SEND_ASS_REJ}: state_chg to NONE TBF(TFI=-1 TLLI=0xffeeddcc DIR=UL STATE=ASSIGN) starting timer X2000 [reject (PACCH)] with 0 sec. 0 microsec PDCH(bts=0,trx=0,ts=7) FN=2654218 Scheduling control message at RTS for TBF(TFI=-1 TLLI=0xffeeddcc DIR=UL STATE=ASSIGN) -UL_ASS_TBF{NONE}: Timeout of X2000 +UL_ASS_TBF(UL-TFI_-1){NONE}: Timeout of X2000 TBF(TFI=-1 TLLI=0xffeeddcc DIR=UL STATE=ASSIGN) free MS(TLLI=0xffeeddcc, IMSI=, TA=220, 0/0,) Detaching TBF: TBF(TFI=-1 TLLI=0xffeeddcc DIR=UL STATE=ASSIGN) MS(TLLI=0xffeeddcc, IMSI=, TA=220, 0/0,) Destroying MS object ********** UL-TBF ends here ********** -UL_ACK_TBF{NONE}: Deallocated -TBF{ASSIGN}: Deallocated -UL_ASS_TBF{NONE}: Deallocated -DL_ASS_TBF{NONE}: Deallocated +UL_ACK_TBF(UL-TFI_-1){NONE}: Deallocated +TBF(UL-TFI_-1){ASSIGN}: Deallocated +UL_ASS_TBF(UL-TFI_-1){NONE}: Deallocated +DL_ASS_TBF(UL-TFI_-1){NONE}: Deallocated === end test_packet_access_rej_prr_no_other_tbfs ===