<p>pespin has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.osmocom.org/c/osmo-pcu/+/18228">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">bts: Drop specific functions to add values to stats<br><br>Change-Id: I877a9c9a35b6c94c3dd6b1ab3019bc57f6c8568a<br>---<br>M src/bts.h<br>M src/gprs_ms_storage.cpp<br>2 files changed, 11 insertions(+), 25 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/28/18228/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/bts.h b/src/bts.h</span><br><span>index 5090f58..15dd482 100644</span><br><span>--- a/src/bts.h</span><br><span>+++ b/src/bts.h</span><br><span>@@ -263,6 +263,10 @@</span><br><span> CTR_EGPRS_UL_MCS9,</span><br><span> };</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+enum {</span><br><span style="color: hsl(120, 100%, 40%);">+ STAT_MS_PRESENT,</span><br><span style="color: hsl(120, 100%, 40%);">+};</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> #ifdef __cplusplus</span><br><span> /**</span><br><span> * I represent a GSM BTS. I have one or more TRX, I know the current</span><br><span>@@ -271,10 +275,6 @@</span><br><span> */</span><br><span> struct BTS {</span><br><span> public:</span><br><span style="color: hsl(0, 100%, 40%);">- enum {</span><br><span style="color: hsl(0, 100%, 40%);">- STAT_MS_PRESENT,</span><br><span style="color: hsl(0, 100%, 40%);">- };</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span> BTS();</span><br><span> ~BTS();</span><br><span> void cleanup();</span><br><span>@@ -318,19 +318,13 @@</span><br><span> const uint8_t *data, unsigned int len);</span><br><span> </span><br><span> /*</span><br><span style="color: hsl(0, 100%, 40%);">- * Statistics</span><br><span style="color: hsl(0, 100%, 40%);">- */</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">- void ms_present(int32_t n);</span><br><span style="color: hsl(0, 100%, 40%);">- int32_t ms_present_get();</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">- /*</span><br><span> * Below for C interface for the VTY</span><br><span> */</span><br><span> struct rate_ctr_group *rate_counters() const;</span><br><span> struct osmo_stat_item_group *stat_items() const;</span><br><span> void do_rate_ctr_inc(unsigned int ctr_id);</span><br><span> void do_rate_ctr_add(unsigned int ctr_id, int inc);</span><br><span style="color: hsl(120, 100%, 40%);">+ void stat_item_add(unsigned int stat_id, int inc);</span><br><span> </span><br><span> LListHead<gprs_rlcmac_tbf>& ul_tbfs();</span><br><span> LListHead<gprs_rlcmac_tbf>& dl_tbfs();</span><br><span>@@ -408,18 +402,10 @@</span><br><span> rate_ctr_add(&m_ratectrs->ctr[ctr_id], inc);</span><br><span> }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-#define CREATE_STAT_INLINE(func_name, func_name_get, stat_name) \</span><br><span style="color: hsl(0, 100%, 40%);">- inline void BTS::func_name(int32_t val) {\</span><br><span style="color: hsl(0, 100%, 40%);">- osmo_stat_item_set(m_statg->items[stat_name], val); \</span><br><span style="color: hsl(0, 100%, 40%);">- } \</span><br><span style="color: hsl(0, 100%, 40%);">- inline int32_t BTS::func_name_get() {\</span><br><span style="color: hsl(0, 100%, 40%);">- return osmo_stat_item_get_last(m_statg->items[stat_name]); \</span><br><span style="color: hsl(0, 100%, 40%);">- }</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-CREATE_STAT_INLINE(ms_present, ms_present_get, STAT_MS_PRESENT);</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-#undef CREATE_STAT_INLINE</span><br><span style="color: hsl(120, 100%, 40%);">+inline void BTS::stat_item_add(unsigned int stat_id, int inc) {</span><br><span style="color: hsl(120, 100%, 40%);">+ int32_t val = osmo_stat_item_get_last(m_statg->items[stat_id]);</span><br><span style="color: hsl(120, 100%, 40%);">+ osmo_stat_item_set(m_statg->items[stat_id], val + inc);</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span> </span><br><span> #endif</span><br><span> </span><br><span>diff --git a/src/gprs_ms_storage.cpp b/src/gprs_ms_storage.cpp</span><br><span>index 04518c5..19b6e1c 100644</span><br><span>--- a/src/gprs_ms_storage.cpp</span><br><span>+++ b/src/gprs_ms_storage.cpp</span><br><span>@@ -55,7 +55,7 @@</span><br><span> {</span><br><span> llist_del(&ms->list());</span><br><span> if (m_bts)</span><br><span style="color: hsl(0, 100%, 40%);">- m_bts->ms_present(m_bts->ms_present_get() - 1);</span><br><span style="color: hsl(120, 100%, 40%);">+ m_bts->stat_item_add(STAT_MS_PRESENT, -1);</span><br><span> if (ms->is_idle())</span><br><span> delete ms;</span><br><span> }</span><br><span>@@ -102,7 +102,7 @@</span><br><span> ms->set_callback(this);</span><br><span> llist_add(&ms->list(), &m_list);</span><br><span> if (m_bts)</span><br><span style="color: hsl(0, 100%, 40%);">- m_bts->ms_present(m_bts->ms_present_get() + 1);</span><br><span style="color: hsl(120, 100%, 40%);">+ m_bts->stat_item_add(STAT_MS_PRESENT, 1);</span><br><span> </span><br><span> return ms;</span><br><span> }</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-pcu/+/18228">change 18228</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/c/osmo-pcu/+/18228"/><meta itemprop="name" content="View Change"/></div></div>
<div style="display:none"> Gerrit-Project: osmo-pcu </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: I877a9c9a35b6c94c3dd6b1ab3019bc57f6c8568a </div>
<div style="display:none"> Gerrit-Change-Number: 18228 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>