On Thu, Apr 25, 2019 at 04:57:47PM -0400, Joel Savitz wrote:
> Currently, there is no fast mechanism to get the virtual memory size of
> the current process from userspace.

> --- a/fs/proc/task_mmu.c
> +++ b/fs/proc/task_mmu.c
> @@ -74,7 +74,10 @@ void task_mem(struct seq_file *m, struct mm_struct *mm)
>       seq_put_decimal_ull_width(m,
>                   " kB\nVmPTE:\t", mm_pgtables_bytes(mm) >> 10, 8);
>       SEQ_PUT_DEC(" kB\nVmSwap:\t", swap);
> -     seq_puts(m, " kB\n");
> +     SEQ_PUT_DEC(" kB\nVmSwap:\t", swap);
> +     seq_put_decimal_ull_width(m,
> +                 " kB\nVmTaskSize:\t", TASK_SIZE >> 10, 8);
> +     seq_puts(m, " kB\n");

TASK_SIZE accesses "current", while this function accesses any ->mm.

Can you turn this into prctl(2) aka "current" refugee camp?

Reply via email to