lists.osmocom.org
Sign In Sign Up
Manage this list Sign In Sign Up

Keyboard Shortcuts

Thread View

  • j: Next unread message
  • k: Previous unread message
  • j a: Jump to all threads
  • j l: Jump to MailingList overview

gerrit-log

Thread Start a new thread
Download
Threads by month
  • ----- 2026 -----
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2025 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2024 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2023 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2022 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
gerrit-log@lists.osmocom.org

July 2025

  • 1 participants
  • 1492 discussions
[XS] Change in osmo-smlc[master]: lb_peer: Constify ptr arg in lb_peer_find()
by pespin 15 Jul '25

15 Jul '25
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-smlc/+/40672?usp=email ) Change subject: lb_peer: Constify ptr arg in lb_peer_find() ...................................................................... lb_peer: Constify ptr arg in lb_peer_find() Change-Id: Ia1da7ad3f6410a47c3e8d4e4f7f534073f2e0116 --- M include/osmocom/smlc/lb_peer.h M src/osmo-smlc/lb_peer.c 2 files changed, 2 insertions(+), 2 deletions(-) Approvals: fixeria: Looks good to me, approved laforge: Looks good to me, but someone else must approve Jenkins Builder: Verified diff --git a/include/osmocom/smlc/lb_peer.h b/include/osmocom/smlc/lb_peer.h index b5ac6d6..7eabe4d 100644 --- a/include/osmocom/smlc/lb_peer.h +++ b/include/osmocom/smlc/lb_peer.h @@ -60,7 +60,7 @@ }; struct lb_peer *lb_peer_find_or_create(struct sccp_lb_inst *sli, const struct osmo_sccp_addr *peer_addr); -struct lb_peer *lb_peer_find(struct sccp_lb_inst *sli, const struct osmo_sccp_addr *peer_addr); +struct lb_peer *lb_peer_find(const struct sccp_lb_inst *sli, const struct osmo_sccp_addr *peer_addr); int lb_peer_up_l2(struct sccp_lb_inst *sli, const struct osmo_sccp_addr *calling_addr, bool co, uint32_t conn_id, struct msgb *l2); diff --git a/src/osmo-smlc/lb_peer.c b/src/osmo-smlc/lb_peer.c index 5206628..f2dc715 100644 --- a/src/osmo-smlc/lb_peer.c +++ b/src/osmo-smlc/lb_peer.c @@ -69,7 +69,7 @@ return lb_peer_alloc(sli, peer_addr); } -struct lb_peer *lb_peer_find(struct sccp_lb_inst *sli, const struct osmo_sccp_addr *peer_addr) +struct lb_peer *lb_peer_find(const struct sccp_lb_inst *sli, const struct osmo_sccp_addr *peer_addr) { struct lb_peer *lbp; llist_for_each_entry(lbp, &sli->lb_peers, entry) { -- To view, visit https://gerrit.osmocom.org/c/osmo-smlc/+/40672?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: merged Gerrit-Project: osmo-smlc Gerrit-Branch: master Gerrit-Change-Id: Ia1da7ad3f6410a47c3e8d4e4f7f534073f2e0116 Gerrit-Change-Number: 40672 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de> Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Reviewer: osmith <osmith(a)sysmocom.de> Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
1 0
0 0
[XS] Change in osmo-ttcn3-hacks[master]: hnbgw: Use static sigtran config also in osmo-hnbgw-with-pfcp.cfg
by pespin 15 Jul '25

15 Jul '25
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40682?usp=email ) Change subject: hnbgw: Use static sigtran config also in osmo-hnbgw-with-pfcp.cfg ...................................................................... hnbgw: Use static sigtran config also in osmo-hnbgw-with-pfcp.cfg Previous commit did set static configuration in osmo-hnbgw.cfg (generic) but forgot to add the same to the with-pfcp scenario. Fixes: 88d6666056d6cdc899d6c102fc379f8a469a725e Change-Id: I20979cbd5cf7e9d8c109f72d5f84c4fbe26b44ca --- M hnbgw/osmo-hnbgw-with-pfcp.cfg 1 file changed, 9 insertions(+), 0 deletions(-) Approvals: pespin: Looks good to me, approved Jenkins Builder: Verified diff --git a/hnbgw/osmo-hnbgw-with-pfcp.cfg b/hnbgw/osmo-hnbgw-with-pfcp.cfg index 0c23eb7..85a95e9 100644 --- a/hnbgw/osmo-hnbgw-with-pfcp.cfg +++ b/hnbgw/osmo-hnbgw-with-pfcp.cfg @@ -37,6 +37,15 @@ cs7 instance 0 point-code 0.23.5 + asp asp-clnt-CN-0 2905 2906 m3ua + local-ip 127.0.0.1 + remote-ip 127.0.0.1 + role asp + sctp-role client + as as-clnt-CN m3ua + asp asp-clnt-CN-0 + routing-key 0 0.23.5 + sccp-address msc-naught routing-indicator PC point-code 0.23.1 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40682?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: merged Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: I20979cbd5cf7e9d8c109f72d5f84c4fbe26b44ca Gerrit-Change-Number: 40682 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
1 0
0 0
[XS] Change in osmo-ttcn3-hacks[master]: hnbgw: Use static sigtran config also in osmo-hnbgw-with-pfcp.cfg
by pespin 15 Jul '25

15 Jul '25
pespin has posted comments on this change by pespin. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40682?usp=email ) Change subject: hnbgw: Use static sigtran config also in osmo-hnbgw-with-pfcp.cfg ...................................................................... Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40682?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: comment Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: I20979cbd5cf7e9d8c109f72d5f84c4fbe26b44ca Gerrit-Change-Number: 40682 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: pespin <pespin(a)sysmocom.de> Gerrit-Comment-Date: Tue, 15 Jul 2025 09:51:28 +0000 Gerrit-HasComments: No Gerrit-Has-Labels: Yes
1 0
0 0
[XS] Change in osmo-msc[master]: ran_peer: Drop unused events CONNECTION_{SUCCESS,TIMEOUT}
by pespin 15 Jul '25

15 Jul '25
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-msc/+/40671?usp=email ) Change subject: ran_peer: Drop unused events CONNECTION_{SUCCESS,TIMEOUT} ...................................................................... ran_peer: Drop unused events CONNECTION_{SUCCESS,TIMEOUT} Change-Id: Ib22be87dc68ab12783eb9140b4a9e04bec06bdab --- M include/osmocom/msc/ran_peer.h M src/libmsc/ran_peer.c 2 files changed, 0 insertions(+), 6 deletions(-) Approvals: fixeria: Looks good to me, but someone else must approve osmith: Looks good to me, but someone else must approve laforge: Looks good to me, approved Jenkins Builder: Verified diff --git a/include/osmocom/msc/ran_peer.h b/include/osmocom/msc/ran_peer.h index 5e85c34..ea6187a 100644 --- a/include/osmocom/msc/ran_peer.h +++ b/include/osmocom/msc/ran_peer.h @@ -80,8 +80,6 @@ RAN_PEER_EV_MSG_DOWN_CO, RAN_PEER_EV_RX_RESET, RAN_PEER_EV_RX_RESET_ACK, - RAN_PEER_EV_CONNECTION_SUCCESS, - RAN_PEER_EV_CONNECTION_TIMEOUT, }; struct ran_peer_ev_ctx { diff --git a/src/libmsc/ran_peer.c b/src/libmsc/ran_peer.c index de07f88..a33608d 100644 --- a/src/libmsc/ran_peer.c +++ b/src/libmsc/ran_peer.c @@ -470,8 +470,6 @@ OSMO_VALUE_STRING(RAN_PEER_EV_MSG_DOWN_CO), OSMO_VALUE_STRING(RAN_PEER_EV_RX_RESET), OSMO_VALUE_STRING(RAN_PEER_EV_RX_RESET_ACK), - OSMO_VALUE_STRING(RAN_PEER_EV_CONNECTION_SUCCESS), - OSMO_VALUE_STRING(RAN_PEER_EV_CONNECTION_TIMEOUT), {} }; @@ -485,7 +483,6 @@ | S(RAN_PEER_EV_RX_RESET) | S(RAN_PEER_EV_MSG_UP_CO_INITIAL) | S(RAN_PEER_EV_MSG_UP_CO) - | S(RAN_PEER_EV_CONNECTION_TIMEOUT) , .out_state_mask = 0 | S(RAN_PEER_ST_WAIT_RX_RESET) @@ -502,7 +499,6 @@ | S(RAN_PEER_EV_RX_RESET_ACK) | S(RAN_PEER_EV_MSG_UP_CO_INITIAL) | S(RAN_PEER_EV_MSG_UP_CO) - | S(RAN_PEER_EV_CONNECTION_TIMEOUT) , .out_state_mask = 0 | S(RAN_PEER_ST_WAIT_RX_RESET) -- To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/40671?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: merged Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-Change-Id: Ib22be87dc68ab12783eb9140b4a9e04bec06bdab Gerrit-Change-Number: 40671 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de> Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de> Gerrit-Reviewer: osmith <osmith(a)sysmocom.de> Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
1 0
0 0
[M] Change in osmo-msc[master]: msc: Initial implementation of N-PCSTATE.ind
by pespin 15 Jul '25

15 Jul '25
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-msc/+/40630?usp=email ) Change subject: msc: Initial implementation of N-PCSTATE.ind ...................................................................... msc: Initial implementation of N-PCSTATE.ind Related: OS#5917 Change-Id: Ice1b2c163b1b0d134fcaa1c8bf543038a35fabdf --- M include/osmocom/msc/ran_peer.h M src/libmsc/ran_peer.c M src/libmsc/sccp_ran.c 3 files changed, 158 insertions(+), 0 deletions(-) Approvals: osmith: Looks good to me, but someone else must approve pespin: Looks good to me, approved Jenkins Builder: Verified laforge: Looks good to me, but someone else must approve diff --git a/include/osmocom/msc/ran_peer.h b/include/osmocom/msc/ran_peer.h index ea6187a..cf6097c 100644 --- a/include/osmocom/msc/ran_peer.h +++ b/include/osmocom/msc/ran_peer.h @@ -1,5 +1,6 @@ #pragma once +#include <stdint.h> #include <osmocom/core/linuxlist.h> #include <osmocom/gsm/gsm0808.h> #include <osmocom/sigtran/sccp_sap.h> @@ -80,6 +81,8 @@ RAN_PEER_EV_MSG_DOWN_CO, RAN_PEER_EV_RX_RESET, RAN_PEER_EV_RX_RESET_ACK, + RAN_PEER_EV_AVAILABLE, + RAN_PEER_EV_UNAVAILABLE }; struct ran_peer_ev_ctx { @@ -90,6 +93,7 @@ struct ran_peer *ran_peer_find_or_create(struct sccp_ran_inst *sri, const struct osmo_sccp_addr *peer_addr); struct ran_peer *ran_peer_find_by_addr(const struct sccp_ran_inst *sri, const struct osmo_sccp_addr *peer_addr); +struct ran_peer *ran_peer_find_by_pc(const struct sccp_ran_inst *sri, uint32_t pc); void ran_peer_cells_seen_add(struct ran_peer *ran_peer, const struct gsm0808_cell_id *id); diff --git a/src/libmsc/ran_peer.c b/src/libmsc/ran_peer.c index a33608d..26cd7cd 100644 --- a/src/libmsc/ran_peer.c +++ b/src/libmsc/ran_peer.c @@ -98,6 +98,21 @@ return NULL; } +/* Find a ran_peer (BSC/RNC) by its remote Point Code */ +struct ran_peer *ran_peer_find_by_pc(const struct sccp_ran_inst *sri, uint32_t pc) +{ + struct ran_peer *rp; + struct osmo_ss7_instance *cs7 = osmo_sccp_get_ss7(sri->sccp); + struct osmo_sccp_addr rem_addr; + + osmo_sccp_make_addr_pc_ssn(&rem_addr, pc, sri->ran->ssn); + rp = ran_peer_find_by_addr(sri, &rem_addr); + if (rp) + return rp; + LOGP(DMSC, LOGL_DEBUG, "No ran_peer found under remote address: %s\n", osmo_sccp_addr_name(cs7, &rem_addr)); + return NULL; +} + void ran_peer_cells_seen_add(struct ran_peer *ran_peer, const struct gsm0808_cell_id *cid) { if (!cell_id_list_add_cell(ran_peer, &ran_peer->cells_seen, cid)) @@ -292,6 +307,15 @@ ran_peer_rx_reset(rp, msg); return; + case RAN_PEER_EV_AVAILABLE: + /* Send a RESET to the peer. */ + ran_peer_reset(rp); + return; + + case RAN_PEER_EV_UNAVAILABLE: + /* Do nothing, wait for peer to come up again. */ + return; + default: LOG_RAN_PEER(rp, LOGL_ERROR, "Unhandled event: %s\n", osmo_fsm_event_name(&ran_peer_fsm, event)); return; @@ -327,6 +351,15 @@ ran_peer_rx_reset(rp, msg); return; + case RAN_PEER_EV_AVAILABLE: + /* Send a RESET to the peer. */ + ran_peer_reset(rp); + return; + + case RAN_PEER_EV_UNAVAILABLE: + ran_peer_state_chg(rp, RAN_PEER_ST_WAIT_RX_RESET); + return; + default: LOG_RAN_PEER(rp, LOGL_ERROR, "Unhandled event: %s\n", osmo_fsm_event_name(&ran_peer_fsm, event)); return; @@ -441,6 +474,15 @@ ran_peer_rx_reset(rp, msg); return; + case RAN_PEER_EV_AVAILABLE: + /* Do nothing, we were already up. */ + return; + + case RAN_PEER_EV_UNAVAILABLE: + ran_peer_discard_all_conns(rp); + ran_peer_state_chg(rp, RAN_PEER_ST_WAIT_RX_RESET); + return; + default: LOG_RAN_PEER(rp, LOGL_ERROR, "Unhandled event: %s\n", osmo_fsm_event_name(&ran_peer_fsm, event)); return; @@ -470,6 +512,8 @@ OSMO_VALUE_STRING(RAN_PEER_EV_MSG_DOWN_CO), OSMO_VALUE_STRING(RAN_PEER_EV_RX_RESET), OSMO_VALUE_STRING(RAN_PEER_EV_RX_RESET_ACK), + OSMO_VALUE_STRING(RAN_PEER_EV_AVAILABLE), + OSMO_VALUE_STRING(RAN_PEER_EV_UNAVAILABLE), {} }; @@ -483,6 +527,8 @@ | S(RAN_PEER_EV_RX_RESET) | S(RAN_PEER_EV_MSG_UP_CO_INITIAL) | S(RAN_PEER_EV_MSG_UP_CO) + | S(RAN_PEER_EV_AVAILABLE) + | S(RAN_PEER_EV_UNAVAILABLE) , .out_state_mask = 0 | S(RAN_PEER_ST_WAIT_RX_RESET) @@ -499,6 +545,8 @@ | S(RAN_PEER_EV_RX_RESET_ACK) | S(RAN_PEER_EV_MSG_UP_CO_INITIAL) | S(RAN_PEER_EV_MSG_UP_CO) + | S(RAN_PEER_EV_AVAILABLE) + | S(RAN_PEER_EV_UNAVAILABLE) , .out_state_mask = 0 | S(RAN_PEER_ST_WAIT_RX_RESET) @@ -517,6 +565,8 @@ | S(RAN_PEER_EV_MSG_DOWN_CO_INITIAL) | S(RAN_PEER_EV_MSG_DOWN_CO) | S(RAN_PEER_EV_MSG_DOWN_CL) + | S(RAN_PEER_EV_AVAILABLE) + | S(RAN_PEER_EV_UNAVAILABLE) , .out_state_mask = 0 | S(RAN_PEER_ST_WAIT_RX_RESET) diff --git a/src/libmsc/sccp_ran.c b/src/libmsc/sccp_ran.c index 9907f20..71d250e 100644 --- a/src/libmsc/sccp_ran.c +++ b/src/libmsc/sccp_ran.c @@ -29,6 +29,7 @@ #include <osmocom/msc/debug.h> #include <osmocom/msc/sccp_ran.h> #include <osmocom/msc/ran_infra.h> +#include <osmocom/msc/ran_peer.h> struct osmo_tdef g_sccp_tdefs[] = { {} @@ -59,6 +60,96 @@ return sri; } +static void handle_pcstate_ind(struct sccp_ran_inst *sri, const struct osmo_scu_pcstate_param *pcst) +{ + struct osmo_ss7_instance *cs7 = osmo_sccp_get_ss7(sri->sccp); + struct ran_peer *rp; + bool connected; + bool disconnected; + + LOGP(DMSC, LOGL_DEBUG, "N-PCSTATE ind: affected_pc=%u=%s sp_status=%s remote_sccp_status=%s\n", + pcst->affected_pc, osmo_ss7_pointcode_print(cs7, pcst->affected_pc), + osmo_sccp_sp_status_name(pcst->sp_status), + osmo_sccp_rem_sccp_status_name(pcst->remote_sccp_status)); + + /* If we don't care about that point-code, ignore PCSTATE. */ + rp = ran_peer_find_by_pc(sri, pcst->affected_pc); + if (!rp) { + LOGP(DMSC, LOGL_DEBUG, "No ran_peer found under pc=%u=s%s\n", + pcst->affected_pc, osmo_ss7_pointcode_print(cs7, pcst->affected_pc)); + return; + } + + /* See if this marks the point code to have become available, or to have been lost. + * + * I want to detect two events: + * - connection event (both indicators say PC is reachable). + * - disconnection event (at least one indicator says the PC is not reachable). + * + * There are two separate incoming indicators with various possible values -- the incoming events can be: + * + * - neither connection nor disconnection indicated -- just indicating congestion + * connected == false, disconnected == false --> do nothing. + * - both incoming values indicate that we are connected + * --> trigger connected + * - both indicate we are disconnected + * --> trigger disconnected + * - one value indicates 'connected', the other indicates 'disconnected' + * --> trigger disconnected + * + * Congestion could imply that we're connected, but it does not indicate that a PC's reachability changed, so no need to + * trigger on that. + */ + connected = false; + disconnected = false; + + switch (pcst->sp_status) { + case OSMO_SCCP_SP_S_ACCESSIBLE: + connected = true; + break; + case OSMO_SCCP_SP_S_INACCESSIBLE: + disconnected = true; + break; + default: + case OSMO_SCCP_SP_S_CONGESTED: + /* Neither connecting nor disconnecting */ + break; + } + + switch (pcst->remote_sccp_status) { + case OSMO_SCCP_REM_SCCP_S_AVAILABLE: + if (!disconnected) + connected = true; + break; + case OSMO_SCCP_REM_SCCP_S_UNAVAILABLE_UNKNOWN: + case OSMO_SCCP_REM_SCCP_S_UNEQUIPPED: + case OSMO_SCCP_REM_SCCP_S_INACCESSIBLE: + disconnected = true; + connected = false; + break; + default: + case OSMO_SCCP_REM_SCCP_S_CONGESTED: + /* Neither connecting nor disconnecting */ + break; + } + + if (disconnected) { + LOG_RAN_PEER(rp, LOGL_NOTICE, + "now unreachable: N-PCSTATE ind: pc=%u=%s sp_status=%s remote_sccp_status=%s\n", + pcst->affected_pc, osmo_ss7_pointcode_print(cs7, pcst->affected_pc), + osmo_sccp_sp_status_name(pcst->sp_status), + osmo_sccp_rem_sccp_status_name(pcst->remote_sccp_status)); + osmo_fsm_inst_dispatch(rp->fi, RAN_PEER_EV_UNAVAILABLE, NULL); + } else if (connected) { + LOG_RAN_PEER(rp, LOGL_NOTICE, + "now available: N-PCSTATE ind: pc=%u=%s sp_status=%s remote_sccp_status=%s\n", + pcst->affected_pc, osmo_ss7_pointcode_print(cs7, pcst->affected_pc), + osmo_sccp_sp_status_name(pcst->sp_status), + osmo_sccp_rem_sccp_status_name(pcst->remote_sccp_status)); + osmo_fsm_inst_dispatch(rp->fi, RAN_PEER_EV_AVAILABLE, NULL); + } +} + static int sccp_ran_sap_up(struct osmo_prim_hdr *oph, void *_scu) { struct osmo_sccp_user *scu = _scu; @@ -141,6 +232,19 @@ rc = sri->ran->sccp_ran_ops.up_l2(sri, peer_addr, false, 0, oph->msg); break; + case OSMO_PRIM(OSMO_SCU_PRIM_N_PCSTATE, PRIM_OP_INDICATION): + handle_pcstate_ind(sri, &prim->u.pcstate); + rc = 0; + break; + + case OSMO_PRIM(OSMO_SCU_PRIM_N_STATE, PRIM_OP_INDICATION): + LOG_SCCP_RAN_CL(sri, NULL, LOGL_INFO, + "SCCP-User-SAP: Ignoring %s.%s\n", + osmo_scu_prim_type_name(oph->primitive), + get_value_string(osmo_prim_op_names, oph->operation)); + rc = 0; + break; + default: LOG_SCCP_RAN_CL(sri, NULL, LOGL_DEBUG, "%s(%s)\n", __func__, osmo_scu_prim_name(oph)); rc = -1; -- To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/40630?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: merged Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-Change-Id: Ice1b2c163b1b0d134fcaa1c8bf543038a35fabdf Gerrit-Change-Number: 40630 Gerrit-PatchSet: 4 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de> Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de> Gerrit-Reviewer: osmith <osmith(a)sysmocom.de> Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
1 0
0 0
[S] Change in osmo-msc[master]: ran_peer: Introduce stats msc.ran_peers.{total,active}
by pespin 15 Jul '25

15 Jul '25
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-msc/+/40633?usp=email ) Change subject: ran_peer: Introduce stats msc.ran_peers.{total,active} ...................................................................... ran_peer: Introduce stats msc.ran_peers.{total,active} Change-Id: I36e40510c9a95f0c9cf5f32d2a7baab840aa8660 --- M include/osmocom/msc/gsm_data.h M src/libmsc/ran_peer.c 2 files changed, 34 insertions(+), 2 deletions(-) Approvals: osmith: Looks good to me, but someone else must approve Jenkins Builder: Verified laforge: Looks good to me, but someone else must approve pespin: Looks good to me, approved diff --git a/include/osmocom/msc/gsm_data.h b/include/osmocom/msc/gsm_data.h index 119f093..36149e1 100644 --- a/include/osmocom/msc/gsm_data.h +++ b/include/osmocom/msc/gsm_data.h @@ -109,6 +109,8 @@ enum { MSC_STAT_ACTIVE_CALLS, MSC_STAT_ACTIVE_NC_SS, + MSC_STAT_RAN_PEERS_TOTAL, + MSC_STAT_RAN_PEERS_ACTIVE, }; static const struct rate_ctr_group_desc msc_ctrg_desc = { @@ -120,8 +122,10 @@ }; static const struct osmo_stat_item_desc msc_stat_item_description[] = { - [MSC_STAT_ACTIVE_CALLS] = { "msc.active_calls", "Currently active calls " , OSMO_STAT_ITEM_NO_UNIT, 4, 0}, - [MSC_STAT_ACTIVE_NC_SS] = { "msc.active_nc_ss", "Currently active SS/USSD sessions", OSMO_STAT_ITEM_NO_UNIT, 4, 0}, + [MSC_STAT_ACTIVE_CALLS] = { "msc.active_calls", "Currently active calls ", OSMO_STAT_ITEM_NO_UNIT, 4, 0}, + [MSC_STAT_ACTIVE_NC_SS] = { "msc.active_nc_ss", "Currently active SS/USSD sessions", OSMO_STAT_ITEM_NO_UNIT, 4, 0}, + [MSC_STAT_RAN_PEERS_TOTAL] = { "msc.ran_peers.total", "Total RAN peers (BSC, RNC) seen since startup", OSMO_STAT_ITEM_NO_UNIT, 4, 0}, + [MSC_STAT_RAN_PEERS_ACTIVE] = { "msc.ran_peers.active", "Currently active RAN peers (BSSAP/RANAP ready)", OSMO_STAT_ITEM_NO_UNIT, 4, 0}, }; static const struct osmo_stat_item_group_desc msc_statg_desc = { diff --git a/src/libmsc/ran_peer.c b/src/libmsc/ran_peer.c index 26cd7cd..1e9b4b6 100644 --- a/src/libmsc/ran_peer.c +++ b/src/libmsc/ran_peer.c @@ -23,6 +23,7 @@ #include <osmocom/core/linuxlist.h> #include <osmocom/core/logging.h> #include <osmocom/core/fsm.h> +#include <osmocom/core/stat_item.h> #include <osmocom/sigtran/sccp_helpers.h> #include <osmocom/msc/ran_peer.h> @@ -45,6 +46,7 @@ /* Allocate a RAN peer with FSM instance. To deallocate, call osmo_fsm_inst_term(ran_peer->fi). */ static struct ran_peer *ran_peer_alloc(struct sccp_ran_inst *sri, const struct osmo_sccp_addr *peer_addr) { + struct gsm_network *net = sri->user_data; struct ran_peer *rp; struct osmo_fsm_inst *fi; char *sccp_addr; @@ -75,6 +77,7 @@ fi->priv = rp; llist_add(&rp->entry, &sri->ran_peers); + osmo_stat_item_inc(osmo_stat_item_group_get_item(net->statg, MSC_STAT_RAN_PEERS_TOTAL), 1); return rp; } @@ -392,6 +395,14 @@ return msc_i->ran_conn; } +static void ran_peer_st_ready_onenter(struct osmo_fsm_inst *fi, uint32_t prev_state) +{ + struct ran_peer *rp = fi->priv; + struct gsm_network *net = rp->sri->user_data; + if (prev_state != RAN_PEER_ST_READY) + osmo_stat_item_inc(osmo_stat_item_group_get_item(net->statg, MSC_STAT_RAN_PEERS_ACTIVE), 1); +} + static void ran_peer_st_ready(struct osmo_fsm_inst *fi, uint32_t event, void *data) { struct ran_peer *rp = fi->priv; @@ -489,6 +500,14 @@ } } +static void ran_peer_st_ready_onleave(struct osmo_fsm_inst *fi, uint32_t next_state) +{ + struct ran_peer *rp = fi->priv; + struct gsm_network *net = rp->sri->user_data; + if (next_state != RAN_PEER_ST_READY) + osmo_stat_item_dec(osmo_stat_item_group_get_item(net->statg, MSC_STAT_RAN_PEERS_ACTIVE), 1); +} + static int ran_peer_fsm_timer_cb(struct osmo_fsm_inst *fi) { struct ran_peer *rp = fi->priv; @@ -499,7 +518,14 @@ static void ran_peer_fsm_cleanup(struct osmo_fsm_inst *fi, enum osmo_fsm_term_cause cause) { struct ran_peer *rp = fi->priv; + struct gsm_network *net = rp->sri->user_data; + ran_peer_discard_all_conns(rp); + + if (rp->fi->state == RAN_PEER_ST_READY) + osmo_stat_item_dec(osmo_stat_item_group_get_item(net->statg, MSC_STAT_RAN_PEERS_ACTIVE), 1); + osmo_stat_item_dec(osmo_stat_item_group_get_item(net->statg, MSC_STAT_RAN_PEERS_TOTAL), 1); + llist_del(&rp->entry); } @@ -558,6 +584,8 @@ [RAN_PEER_ST_READY] = { .name = "READY", .action = ran_peer_st_ready, + .onenter = ran_peer_st_ready_onenter, + .onleave = ran_peer_st_ready_onleave, .in_event_mask = 0 | S(RAN_PEER_EV_RX_RESET) | S(RAN_PEER_EV_MSG_UP_CO_INITIAL) -- To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/40633?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: merged Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-Change-Id: I36e40510c9a95f0c9cf5f32d2a7baab840aa8660 Gerrit-Change-Number: 40633 Gerrit-PatchSet: 6 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de> Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de> Gerrit-Reviewer: osmith <osmith(a)sysmocom.de> Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
1 0
0 0
[S] Change in osmo-msc[master]: ran_peer: Introduce stats msc.ran_peers.{total,active}
by pespin 15 Jul '25

15 Jul '25
Attention is currently required from: fixeria, neels. pespin has posted comments on this change by pespin. ( https://gerrit.osmocom.org/c/osmo-msc/+/40633?usp=email ) Change subject: ran_peer: Introduce stats msc.ran_peers.{total,active} ...................................................................... Patch Set 6: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/40633?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: comment Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-Change-Id: I36e40510c9a95f0c9cf5f32d2a7baab840aa8660 Gerrit-Change-Number: 40633 Gerrit-PatchSet: 6 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de> Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de> Gerrit-Reviewer: osmith <osmith(a)sysmocom.de> Gerrit-Reviewer: pespin <pespin(a)sysmocom.de> Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de> Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de> Gerrit-Comment-Date: Tue, 15 Jul 2025 09:50:49 +0000 Gerrit-HasComments: No Gerrit-Has-Labels: Yes
1 0
0 0
[S] Change in osmo-msc[master]: ran_peer: Introduce stats msc.ran_peers.{total,active}
by osmith 15 Jul '25

15 Jul '25
Attention is currently required from: fixeria, neels, pespin. osmith has posted comments on this change by pespin. ( https://gerrit.osmocom.org/c/osmo-msc/+/40633?usp=email ) Change subject: ran_peer: Introduce stats msc.ran_peers.{total,active} ...................................................................... Patch Set 6: Code-Review+1 -- To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/40633?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: comment Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-Change-Id: I36e40510c9a95f0c9cf5f32d2a7baab840aa8660 Gerrit-Change-Number: 40633 Gerrit-PatchSet: 6 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de> Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de> Gerrit-Reviewer: osmith <osmith(a)sysmocom.de> Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de> Gerrit-Attention: pespin <pespin(a)sysmocom.de> Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de> Gerrit-Comment-Date: Tue, 15 Jul 2025 09:50:30 +0000 Gerrit-HasComments: No Gerrit-Has-Labels: Yes
1 0
0 0
[XS] Change in osmo-smlc[master]: lb_peer: Constify ptr arg in lb_peer_find()
by fixeria 15 Jul '25

15 Jul '25
Attention is currently required from: osmith, pespin. fixeria has posted comments on this change by pespin. ( https://gerrit.osmocom.org/c/osmo-smlc/+/40672?usp=email ) Change subject: lb_peer: Constify ptr arg in lb_peer_find() ...................................................................... Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmo-smlc/+/40672?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: comment Gerrit-Project: osmo-smlc Gerrit-Branch: master Gerrit-Change-Id: Ia1da7ad3f6410a47c3e8d4e4f7f534073f2e0116 Gerrit-Change-Number: 40672 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de> Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Reviewer: osmith <osmith(a)sysmocom.de> Gerrit-Attention: osmith <osmith(a)sysmocom.de> Gerrit-Attention: pespin <pespin(a)sysmocom.de> Gerrit-Comment-Date: Tue, 15 Jul 2025 09:50:07 +0000 Gerrit-HasComments: No Gerrit-Has-Labels: Yes
1 0
0 0
[XS] Change in osmo-ttcn3-hacks[master]: hnbgw: Use static sigtran config also in osmo-hnbgw-with-pfcp.cfg
by pespin 15 Jul '25

15 Jul '25
pespin has posted comments on this change by pespin. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40682?usp=email ) Change subject: hnbgw: Use static sigtran config also in osmo-hnbgw-with-pfcp.cfg ...................................................................... Patch Set 1: (1 comment) Patchset: PS1: Merging now, since this fixes regressions in ttcn3-hnbgw-test. -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40682?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: comment Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: I20979cbd5cf7e9d8c109f72d5f84c4fbe26b44ca Gerrit-Change-Number: 40682 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Comment-Date: Tue, 15 Jul 2025 09:43:04 +0000 Gerrit-HasComments: Yes Gerrit-Has-Labels: No
1 0
0 0
  • ← Newer
  • 1
  • ...
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • ...
  • 150
  • Older →

HyperKitty Powered by HyperKitty version 1.3.12.