From bdb8f3f27b06bf4591c4323fc9ce1852dbb7bcce Mon Sep 17 00:00:00 2001 From: Norihiro Kamae Date: Sat, 7 Aug 2021 10:00:13 +0900 Subject: [PATCH] libobs/util: Fix reading memory usage on Linux Memory usage displayed on Stats was too small due to a misaligned unit of `resident_size` read from `statm` file and libobs. --- libobs/util/platform-nix.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libobs/util/platform-nix.c b/libobs/util/platform-nix.c index 431ddfd29..636ce8d7b 100644 --- a/libobs/util/platform-nix.c +++ b/libobs/util/platform-nix.c @@ -1001,7 +1001,8 @@ bool os_get_proc_memory_usage(os_proc_memory_usage_t *usage) if (!os_get_proc_memory_usage_internal(&statm)) return false; - usage->resident_size = statm.resident_size; + usage->resident_size = + (uint64_t)statm.resident_size * sysconf(_SC_PAGESIZE); usage->virtual_size = statm.virtual_size; return true; } @@ -1011,7 +1012,7 @@ uint64_t os_get_proc_resident_size(void) statm_t statm = {}; if (!os_get_proc_memory_usage_internal(&statm)) return 0; - return (uint64_t)statm.resident_size; + return (uint64_t)statm.resident_size * sysconf(_SC_PAGESIZE); } uint64_t os_get_proc_virtual_size(void)