diff options
author | Pau Espin Pedrol <pespin@sysmocom.de> | 2021-06-15 17:06:19 +0200 |
---|---|---|
committer | pespin <pespin@sysmocom.de> | 2021-06-17 14:05:40 +0000 |
commit | f274976df313c6fe222a2e2432e8c91511e8feee (patch) | |
tree | cbb941623346372a67b18f10a497243ed5706e3b /src/osmo-bsc/handover_fsm.c | |
parent | b9a62638230b65d3620adb949ad1a55e1130d8f9 (diff) |
Introduce counters to track SRVCC procedures
Related: SYS#5337
Change-Id: I5c20da56d465dbcf4366130394f7c42635a24cc7
Diffstat (limited to 'src/osmo-bsc/handover_fsm.c')
-rw-r--r-- | src/osmo-bsc/handover_fsm.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/osmo-bsc/handover_fsm.c b/src/osmo-bsc/handover_fsm.c index 08b1dc7c5..cae5167b4 100644 --- a/src/osmo-bsc/handover_fsm.c +++ b/src/osmo-bsc/handover_fsm.c @@ -725,6 +725,7 @@ void handover_start_inter_bsc_in(struct gsm_subscriber_connection *conn, conn->fast_return.last_eutran_plmn_valid = true; memcpy(&conn->fast_return.last_eutran_plmn, &req->last_eutran_plmn, sizeof(conn->fast_return.last_eutran_plmn)); + ho_count(ho->new_bts, CTR_SRVCC_ATTEMPTED); } lchan_activate(ho->new_lchan, &info); @@ -824,6 +825,9 @@ static int result_counter_bts(enum handover_scope scope, enum handover_result re } } +FUNC_RESULT_COUNTER(BSC, SRVCC) +FUNC_RESULT_COUNTER(BTS, SRVCC) + static void send_handover_performed(struct gsm_subscriber_connection *conn) { struct gsm_lchan *lchan = conn->lchan; @@ -977,6 +981,11 @@ 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)); + 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)); + ho_count_bts(bts, result_counter_BTS_SRVCC(result)); + } LOG_HO(conn, LOGL_INFO, "Result: %s\n", handover_result_name(result)); |