Re: [PATCH v4] fs/proc: add VmTaskSize field to /proc/$$/status

From: Andrew Morton
Date: Thu Jun 13 2019 - 15:34:41 EST


On Thu, 13 Jun 2019 10:54:50 -0400 Joel Savitz <jsavitz@xxxxxxxxxx> wrote:

> The kernel provides no architecture-independent mechanism to get the
> size of the virtual address space of a task (userspace process) without
> brute-force calculation. This patch allows a user to easily retrieve
> this value via a new VmTaskSize entry in /proc/$$/status.

Why is access to ->task_size required? Please fully describe the
use case.

> --- a/Documentation/filesystems/proc.txt
> +++ b/Documentation/filesystems/proc.txt
> @@ -187,6 +187,7 @@ read the file /proc/PID/status:
> VmLib: 1412 kB
> VmPTE: 20 kb
> VmSwap: 0 kB
> + VmTaskSize: 137438953468 kB
> HugetlbPages: 0 kB
> CoreDumping: 0
> THP_enabled: 1
> @@ -263,6 +264,7 @@ Table 1-2: Contents of the status files (as of 4.19)
> VmPTE size of page table entries
> VmSwap amount of swap used by anonymous private data
> (shmem swap usage is not included)
> + VmTaskSize size of task (userspace process) vm space

This is rather vague. Is it the total amount of physical memory? The
sum of all vma sizes, populated or otherwise? Something else?