diff -urNp c/agent/mibgroup/hardware/memory/memory_linux.c d/agent/mibgroup/hardware/memory/memory_linux.c --- c/agent/mibgroup/hardware/memory/memory_linux.c 2019-04-10 14:07:47.375285001 +0200 +++ d/agent/mibgroup/hardware/memory/memory_linux.c 2019-04-12 11:39:11.677314245 +0200 @@ -29,7 +29,7 @@ int netsnmp_mem_arch_load( netsnmp_cache ssize_t bytes_read; char *b; unsigned long memtotal = 0, memfree = 0, memshared = 0, - buffers = 0, cached = 0, + buffers = 0, cached = 0, sreclaimable = 0, swaptotal = 0, swapfree = 0; netsnmp_memory_info *mem; @@ -126,6 +126,13 @@ int netsnmp_mem_arch_load( netsnmp_cache if (first) snmp_log(LOG_ERR, "No SwapTotal line in /proc/meminfo\n"); } + b = strstr(buff, "SReclaimable: "); + if (b) + sscanf(b, "SReclaimable: %lu", &sreclaimable); + else { + if (first) + snmp_log(LOG_ERR, "No SReclaimable line in /proc/meminfo\n"); + } b = strstr(buff, "SwapFree: "); if (b) sscanf(b, "SwapFree: %lu", &swapfree); @@ -182,7 +189,7 @@ int netsnmp_mem_arch_load( netsnmp_cache if (!mem->descr) mem->descr = strdup("Cached memory"); mem->units = 1024; - mem->size = cached; + mem->size = cached+sreclaimable; mem->free = 0; /* Report cached size/used as equal */ mem->other = -1; }