[pve-devel] [PATCH common 3/4] add helper to fetch value from smaps_rollup for pid
Aaron Lauterer
a.lauterer at proxmox.com
Fri May 23 18:37:37 CEST 2025
Signed-off-by: Aaron Lauterer <a.lauterer at proxmox.com>
---
src/PVE/ProcFSTools.pm | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/src/PVE/ProcFSTools.pm b/src/PVE/ProcFSTools.pm
index 382e6c5..185b2b3 100644
--- a/src/PVE/ProcFSTools.pm
+++ b/src/PVE/ProcFSTools.pm
@@ -344,6 +344,20 @@ sub read_meminfo {
return $res;
}
+# extract memory data from /proc/$pid/smaps_rollup for PID. $value is e.g. "Pss".
+sub read_smaps_rollup {
+ my ($pid, $value) = @_;
+
+ my $res = 0;
+ return $res if !$pid || !$value;
+
+ my $mem_stats = eval { PVE::Tools::file_get_contents("/proc/${pid}/smaps_rollup") };
+ if ($mem_stats && $mem_stats =~ m/^${value}:\s+(\d+)\s*kB$/m) {
+ $res = $1 * 1024;
+ }
+ return $res;
+}
+
# memory usage of current process
sub read_memory_usage {
--
2.39.5
More information about the pve-devel
mailing list