diff options
author | Daniel Willmann <dwillmann@sysmocom.de> | 2020-06-03 18:25:45 +0200 |
---|---|---|
committer | laforge <laforge@osmocom.org> | 2020-06-16 08:43:45 +0000 |
commit | fea5d640d4513a5cf71ba75c8dcc484759e1bb1a (patch) | |
tree | 26a6b3bcc5a4f85cf665bf0fcbc0b4a5ff43b04d | |
parent | ce7aa0d5c2a1f72d353a8fced68be5d2efd46b40 (diff) |
abis_rsl: Count successful channel requests
Ticket: SYS#4877
Change-Id: I5c51956569223e802f4789dc5ed1605d18f80aea
-rw-r--r-- | include/osmocom/bsc/gsm_data.h | 2 | ||||
-rw-r--r-- | src/osmo-bsc/abis_rsl.c | 8 |
2 files changed, 9 insertions, 1 deletions
diff --git a/include/osmocom/bsc/gsm_data.h b/include/osmocom/bsc/gsm_data.h index 8dc410582..7e55089dd 100644 --- a/include/osmocom/bsc/gsm_data.h +++ b/include/osmocom/bsc/gsm_data.h @@ -1384,6 +1384,7 @@ void lchan_update_ms_power_ctrl_level(struct gsm_lchan *lchan, int ms_power_dbm) enum bts_counter_id { BTS_CTR_CHREQ_TOTAL, + BTS_CTR_CHREQ_SUCCESSFUL, BTS_CTR_CHREQ_NO_CHANNEL, BTS_CTR_CHAN_RF_FAIL, BTS_CTR_CHAN_RLL_ERR, @@ -1430,6 +1431,7 @@ enum bts_counter_id { static const struct rate_ctr_desc bts_ctr_description[] = { [BTS_CTR_CHREQ_TOTAL] = {"chreq:total", "Received channel requests"}, + [BTS_CTR_CHREQ_SUCCESSFUL] = {"chreq:successful", "Successful channel requests (immediate assign sent)"}, [BTS_CTR_CHREQ_NO_CHANNEL] = {"chreq:no_channel", "Sent to MS no channel available"}, [BTS_CTR_CHAN_RF_FAIL] = {"chan:rf_fail", "Received a RF failure indication from BTS"}, [BTS_CTR_CHAN_RLL_ERR] = {"chan:rll_err", "Received a RLL failure with T200 cause from BTS"}, diff --git a/src/osmo-bsc/abis_rsl.c b/src/osmo-bsc/abis_rsl.c index 4a1d31476..705e75904 100644 --- a/src/osmo-bsc/abis_rsl.c +++ b/src/osmo-bsc/abis_rsl.c @@ -1428,6 +1428,7 @@ static int rsl_rx_chan_rqd(struct msgb *msg) int rsl_tx_imm_assignment(struct gsm_lchan *lchan) { + int rc; struct gsm_bts *bts = lchan->ts->trx->bts; uint8_t buf[GSM_MACBLOCK_LEN]; struct gsm48_imm_ass *ia = (struct gsm48_imm_ass *) buf; @@ -1453,7 +1454,12 @@ int rsl_tx_imm_assignment(struct gsm_lchan *lchan) ia->l2_plen = GSM48_LEN2PLEN((sizeof(*ia)-1) + ia->mob_alloc_len); /* send IMMEDIATE ASSIGN CMD on RSL to BTS (to send on CCCH to MS) */ - return rsl_imm_assign_cmd(bts, sizeof(*ia)+ia->mob_alloc_len, (uint8_t *) ia); + rc = rsl_imm_assign_cmd(bts, sizeof(*ia)+ia->mob_alloc_len, (uint8_t *) ia); + + if (!rc) + rate_ctr_inc(&bts->bts_ctrs->ctr[BTS_CTR_CHREQ_SUCCESSFUL]); + + return rc; } /* current load on the CCCH */ |