diff options
author | Neels Hofmeyr <nhofmeyr@sysmocom.de> | 2021-11-02 13:25:48 +0100 |
---|---|---|
committer | Neels Hofmeyr <nhofmeyr@sysmocom.de> | 2021-11-06 17:02:38 +0100 |
commit | d5a6dca2f946f292fabf47b7e9e5e5914424c3d5 (patch) | |
tree | 342b932d813ca81c4256083c070df65938fdf0bf /src/osmo-bsc/handover_fsm.c | |
parent | a521a3fa393a58b70be1917f0e3aefa6fbc4e78b (diff) |
implement incoming_intra_bsc_ho:* rate counters
We have lots of counters for intra-BSC handover *away from* a given BTS,
but still missing are counters indicating how many handovers *targeted*
a given BTS. Also count incoming HO.
Related: SYS#4878
Related: Iba229313d73fa20266f6d4eac5820579fb14c604 (osmo-ttcn3-hacks)
Change-Id: Id9f2c6e2865ebe680879018fff08d283ce24c983
Diffstat (limited to 'src/osmo-bsc/handover_fsm.c')
-rw-r--r-- | src/osmo-bsc/handover_fsm.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/osmo-bsc/handover_fsm.c b/src/osmo-bsc/handover_fsm.c index 7cf11cc3e..37e74176d 100644 --- a/src/osmo-bsc/handover_fsm.c +++ b/src/osmo-bsc/handover_fsm.c @@ -387,6 +387,7 @@ static void handover_start_intra_bsc(struct gsm_subscriber_connection *conn) } else { ho_count(bts, CTR_INTRA_BSC_HO_ATTEMPTED); ho_fsm_update_id(fi, "intraBSC"); + ho_count_bts(ho->new_bts, BTS_CTR_INCOMING_INTRA_BSC_HO_ATTEMPTED); } if (!ho->new_lchan) { @@ -829,6 +830,7 @@ static int result_counter_bsc(enum handover_scope scope, enum handover_result re FUNC_RESULT_COUNTER(BTS, HANDOVER) FUNC_RESULT_COUNTER(BTS, INTRA_CELL_HO) FUNC_RESULT_COUNTER(BTS, INTRA_BSC_HO) +FUNC_RESULT_COUNTER(BTS, INCOMING_INTRA_BSC_HO) FUNC_RESULT_COUNTER(BTS, INTER_BSC_HO_IN) /* INTRA_BSC_HO_OUT does not have a NO_CHANNEL result, so can't do this with FUNC_RESULT_COUNTER() macro. */ @@ -1020,6 +1022,9 @@ void handover_end(struct gsm_subscriber_connection *conn, enum handover_result r ho_count_bsc(result_counter_bsc(ho->scope, result)); ho_count_bts(bts, result_counter_BTS_HANDOVER(result)); ho_count_bts(bts, result_counter_bts(ho->scope, result)); + /* For inter-cell HO, also increment the "INCOMING" counters on the target BTS. */ + if (ho->scope & HO_INTRA_BSC) + ho_count_bts(ho->new_bts, result_counter_BTS_INCOMING_INTRA_BSC_HO(result)); if (ho->scope & HO_INTER_BSC_IN && conn->fast_return.last_eutran_plmn_valid) { /* From outside local BSC and with Last EUTRAN PLMN Id => SRVCC */ ho_count_bsc(result_counter_BSC_SRVCC(result)); |