diff options
author | Jacob Erlbeck <jerlbeck@sysmocom.de> | 2016-01-21 20:12:04 +0100 |
---|---|---|
committer | Jacob Erlbeck <jerlbeck@sysmocom.de> | 2016-02-08 00:45:37 +0100 |
commit | 0316dc6e4808d0413a4edf3738edea44193228e4 (patch) | |
tree | 61f4acaf36b443c2700e9bff1c8836dd472f717c /src/tbf.cpp | |
parent | 29e3a2f0f3d3cacdb741d406e43b0c725fffd81e (diff) |
tbf: Add counters for aborted TBF in state FLOW
Increment CTR_TBF_DL_ABORTED/CTR_TBF_UL_ABORTED if a TBF gets freed
that is still in state GPRS_RLCMAC_FLOW.
Sponsored-by: On-Waves ehf
Diffstat (limited to 'src/tbf.cpp')
-rw-r--r-- | src/tbf.cpp | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/tbf.cpp b/src/tbf.cpp index c852d66..e8a9e3e 100644 --- a/src/tbf.cpp +++ b/src/tbf.cpp @@ -310,6 +310,17 @@ static void tbf_unlink_pdch(struct gprs_rlcmac_tbf *tbf) void tbf_free(struct gprs_rlcmac_tbf *tbf) { + /* update counters */ + if (tbf->direction == GPRS_RLCMAC_UL_TBF) { + tbf->bts->tbf_ul_freed(); + if (tbf->state_is(GPRS_RLCMAC_FLOW)) + tbf->bts->tbf_ul_aborted(); + } else { + tbf->bts->tbf_dl_freed(); + if (tbf->state_is(GPRS_RLCMAC_FLOW)) + tbf->bts->tbf_dl_aborted(); + } + /* Give final measurement report */ gprs_rlcmac_rssi_rep(tbf); if (tbf->direction == GPRS_RLCMAC_DL_TBF) { @@ -336,11 +347,6 @@ void tbf_free(struct gprs_rlcmac_tbf *tbf) tbf_unlink_pdch(tbf); llist_del(&tbf->list()); - if (tbf->direction == GPRS_RLCMAC_UL_TBF) - tbf->bts->tbf_ul_freed(); - else - tbf->bts->tbf_dl_freed(); - if (tbf->ms()) tbf->set_ms(NULL); |