libmeminfo: add KReclaimable to the fields read from meminfo
am: 54d365448f
Change-Id: If3716a93b24b8d60b97e9479e9a7c1a54481a560
diff --git a/include/meminfo/sysmeminfo.h b/include/meminfo/sysmeminfo.h
index 8388920..f533d8c 100644
--- a/include/meminfo/sysmeminfo.h
+++ b/include/meminfo/sysmeminfo.h
@@ -43,6 +43,7 @@
static constexpr const char* kMemVmallocUsed = "VmallocUsed:";
static constexpr const char* kMemPageTables = "PageTables:";
static constexpr const char* kMemKernelStack = "KernelStack:";
+ static constexpr const char* kMemKReclaimable = "KReclaimable:";
static const std::vector<std::string> kDefaultSysMemInfoTags;
@@ -75,6 +76,7 @@
uint64_t mem_vmalloc_used_kb() { return mem_in_kb_[kMemVmallocUsed]; }
uint64_t mem_page_tables_kb() { return mem_in_kb_[kMemPageTables]; }
uint64_t mem_kernel_stack_kb() { return mem_in_kb_[kMemKernelStack]; }
+ uint64_t mem_kreclaimable_kb() { return mem_in_kb_[kMemKReclaimable]; }
uint64_t mem_zram_kb(const std::string& zram_dev = "");
private:
diff --git a/libmeminfo_test.cpp b/libmeminfo_test.cpp
index 378a4cd..c69e82b 100644
--- a/libmeminfo_test.cpp
+++ b/libmeminfo_test.cpp
@@ -555,6 +555,7 @@
AnonPages: 74988 kB
Mapped: 62624 kB
Shmem: 4020 kB
+KReclaimable: 87324 kB
Slab: 86464 kB
SReclaimable: 44432 kB
SUnreclaim: 42032 kB
@@ -599,6 +600,7 @@
EXPECT_EQ(mi.mem_vmalloc_used_kb(), 65536);
EXPECT_EQ(mi.mem_page_tables_kb(), 2900);
EXPECT_EQ(mi.mem_kernel_stack_kb(), 4880);
+ EXPECT_EQ(mi.mem_kreclaimable_kb(), 87324);
}
TEST(SysMemInfo, TestEmptyFile) {
@@ -639,6 +641,7 @@
MEMINFO_VMALLOC_USED,
MEMINFO_PAGE_TABLES,
MEMINFO_KERNEL_STACK,
+ MEMINFO_KRECLAIMABLE,
MEMINFO_COUNT
};
@@ -664,6 +667,7 @@
AnonPages: 74988 kB
Mapped: 62624 kB
Shmem: 4020 kB
+KReclaimable: 87324 kB
Slab: 86464 kB
SReclaimable: 44432 kB
SUnreclaim: 42032 kB
@@ -715,6 +719,7 @@
EXPECT_EQ(mem[MEMINFO_VMALLOC_USED], 65536);
EXPECT_EQ(mem[MEMINFO_PAGE_TABLES], 2900);
EXPECT_EQ(mem[MEMINFO_KERNEL_STACK], 4880);
+ EXPECT_EQ(mem[MEMINFO_KRECLAIMABLE], 87324);
}
TEST(SysMemInfo, TestVmallocInfoNoMemory) {
diff --git a/sysmeminfo.cpp b/sysmeminfo.cpp
index 5cfa6c3..1e1baf0 100644
--- a/sysmeminfo.cpp
+++ b/sysmeminfo.cpp
@@ -50,7 +50,7 @@
SysMemInfo::kMemCached, SysMemInfo::kMemShmem, SysMemInfo::kMemSlab,
SysMemInfo::kMemSReclaim, SysMemInfo::kMemSUnreclaim, SysMemInfo::kMemSwapTotal,
SysMemInfo::kMemSwapFree, SysMemInfo::kMemMapped, SysMemInfo::kMemVmallocUsed,
- SysMemInfo::kMemPageTables, SysMemInfo::kMemKernelStack,
+ SysMemInfo::kMemPageTables, SysMemInfo::kMemKernelStack, SysMemInfo::kMemKReclaimable,
};
bool SysMemInfo::ReadMemInfo(const std::string& path) {