From a55b5a9aed3981fcec205e246436991d138c78a2 Mon Sep 17 00:00:00 2001 From: Dmitry Chagin Date: Sun, 26 Feb 2023 16:42:22 +0300 Subject: [PATCH] linprocfs(4): Fixup process size in the /proc/pid/stat file According to the Linux sources the kernel exposes a proces virtual memory size via proc filesystem into the three files - stat, status and statm. This is the struct mm->total_vm value adjusted to the corresponding units - bytes, kilobytes and pages. The fix is based on a fernape@ analysis. PR: 265937 Reported by: Ray Bellis MFC after: 3 days --- sys/compat/linprocfs/linprocfs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/compat/linprocfs/linprocfs.c b/sys/compat/linprocfs/linprocfs.c index 83b00dc0d7c2..d57c546eb637 100644 --- a/sys/compat/linprocfs/linprocfs.c +++ b/sys/compat/linprocfs/linprocfs.c @@ -1023,7 +1023,7 @@ linprocfs_doprocstat(PFS_FILL_ARGS) PS_ADD("0", "%d", 0); /* removed field */ PS_ADD("itrealvalue", "%d", 0); /* XXX */ PS_ADD("starttime", "%lu", TV2J(&kp.ki_start) - TV2J(&boottime)); - PS_ADD("vsize", "%ju", P2K((uintmax_t)kp.ki_size)); + PS_ADD("vsize", "%ju", (uintmax_t)kp.ki_size); PS_ADD("rss", "%ju", (uintmax_t)kp.ki_rssize); PS_ADD("rlim", "%lu", kp.ki_rusage.ru_maxrss); PS_ADD("startcode", "%ju", (uintmax_t)startcode);