From 3521752fd745c059c422884951e6a090de4b25ba Mon Sep 17 00:00:00 2001
From: Jean-Claude Bau <jean-claude.bau@cern.ch>
Date: Wed, 26 Feb 2020 17:02:33 +0100
Subject: [PATCH] SNMP.wrsMemoryGroup: Optimization and refactoring

---
 userspace/snmpd/wrsMemoryGroup.c | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/userspace/snmpd/wrsMemoryGroup.c b/userspace/snmpd/wrsMemoryGroup.c
index d58aba90e..734346a2a 100644
--- a/userspace/snmpd/wrsMemoryGroup.c
+++ b/userspace/snmpd/wrsMemoryGroup.c
@@ -71,14 +71,12 @@ time_t wrsMemory_data_fill(void)
 	fclose(f);
 
 	if (found == MEMINFO_ENTRIES && mem_total > 0) { /* avoid div 0 */
+		unsigned long allFreeMem= mem_free + mem_buffers +mem_cached;
 		wrsMemory_s.wrsMemoryTotal = (int) mem_total;
-		wrsMemory_s.wrsMemoryUsed = (int) (mem_total - mem_free
-						   - mem_buffers - mem_cached);
-		wrsMemory_s.wrsMemoryUsedPerc = (int) ((mem_total - mem_free
-						    - mem_buffers - mem_cached)
+		wrsMemory_s.wrsMemoryUsed = (int) (mem_total - allFreeMem);
+		wrsMemory_s.wrsMemoryUsedPerc = (int) ((mem_total - allFreeMem)
 						    * 100 / mem_total);
-		wrsMemory_s.wrsMemoryFree = (int) (mem_free + mem_buffers
-						   + mem_cached);
+		wrsMemory_s.wrsMemoryFree = (int) (allFreeMem);
 	} else { /* if not enough entries found */
 		snmp_log(LOG_ERR, "SNMP:  " SL_ER
 			 " wrsMemoryGroup error while reading "
-- 
GitLab