diff options
author | Daniel Willmann <dwillmann@sysmocom.de> | 2021-07-09 20:35:00 +0200 |
---|---|---|
committer | Daniel Willmann <dwillmann@sysmocom.de> | 2021-07-09 20:35:00 +0200 |
commit | efa64f9429aae0a7cab8efc7e40861d59ec3d6b9 (patch) | |
tree | be8673c88e36a0306c8c9f6b707476109af3d85f /src/gb/gprs_ns2_internal.h | |
parent | fix api doc of osmo_identifier_sanitize_buf() (diff) | |
download | libosmocore-efa64f9429aae0a7cab8efc7e40861d59ec3d6b9.tar.xz libosmocore-efa64f9429aae0a7cab8efc7e40861d59ec3d6b9.zip |
Aggregate NSVC stats inside the NSE
Change-Id: Ifa3c85ec52bda14596e9d7a8705baa1fd4ee2010
Related: OS#4998
Diffstat (limited to 'src/gb/gprs_ns2_internal.h')
-rw-r--r-- | src/gb/gprs_ns2_internal.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/gb/gprs_ns2_internal.h b/src/gb/gprs_ns2_internal.h index 70e212a0..db01c2ee 100644 --- a/src/gb/gprs_ns2_internal.h +++ b/src/gb/gprs_ns2_internal.h @@ -38,6 +38,20 @@ #define LOG_NS_RX_SIGNAL(nsvc, pdu_type) LOG_NS_SIGNAL(nsvc, "Rx", pdu_type, LOGL_INFO, "\n") #define LOG_NS_TX_SIGNAL(nsvc, pdu_type) LOG_NS_SIGNAL(nsvc, "Tx", pdu_type, LOGL_INFO, "\n") +#define RATE_CTR_INC_NS(nsvc, ctr) \ + do { \ + struct gprs_ns2_vc *_nsvc = (nsvc); \ + rate_ctr_inc(rate_ctr_group_get_ctr(_nsvc->ctrg, ctr)); \ + rate_ctr_inc(rate_ctr_group_get_ctr(_nsvc->nse->ctrg, ctr)); \ + } while (0) + +#define RATE_CTR_ADD_NS(nsvc, ctr, val) \ + do { \ + struct gprs_ns2_vc *_nsvc = (nsvc); \ + rate_ctr_add(rate_ctr_group_get_ctr(_nsvc->ctrg, ctr), val); \ + rate_ctr_add(rate_ctr_group_get_ctr(_nsvc->nse->ctrg, ctr), val); \ + } while (0) + struct osmo_fsm_inst; struct tlv_parsed; @@ -198,6 +212,9 @@ struct gprs_ns2_nse { /*! are we implementing the SGSN role? */ bool ip_sns_role_sgsn; + + /*! NSE-wide statistics */ + struct rate_ctr_group *ctrg; }; /*! Structure representing a single NS-VC */ |