Re: [RFC 18/18] proc: present VM_LOCKED memory in /proc/self/maps
[Posted July 13, 2016 by jake]
From: |
| Kees Cook <kees-AT-outflux.net> |
To: |
| Topi Miettinen <toiwoton-AT-gmail.com> |
Subject: |
| Re: [RFC 18/18] proc: present VM_LOCKED memory in /proc/self/maps |
Date: |
| Mon, 13 Jun 2016 13:43:13 -0700 |
Message-ID: |
| <20160613204312.GP3346@outflux.net> |
Cc: |
| linux-kernel-AT-vger.kernel.org, Andrew Morton <akpm-AT-linux-foundation.org>, Michal Hocko <mhocko-AT-suse.com>, Konstantin Khlebnikov <koct9i-AT-gmail.com>, Vlastimil Babka <vbabka-AT-suse.cz>, "Kirill A. Shutemov" <kirill.shutemov-AT-linux.intel.com>, Jerome Marchand <jmarchan-AT-redhat.com>, Laurent Dufour <ldufour-AT-linux.vnet.ibm.com>, Naoya Horiguchi <n-horiguchi-AT-ah.jp.nec.com>, Gerald Schaefer <gerald.schaefer-AT-de.ibm.com>, Johannes Weiner <hannes-AT-cmpxchg.org> |
Archive‑link: | |
Article |
On Mon, Jun 13, 2016 at 10:44:25PM +0300, Topi Miettinen wrote:
> Add a flag to /proc/self/maps to show that the memory area is locked.
>
> Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
> ---
> fs/proc/task_mmu.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/fs/proc/task_mmu.c b/fs/proc/task_mmu.c
> index 4648c7f..8229509 100644
> --- a/fs/proc/task_mmu.c
> +++ b/fs/proc/task_mmu.c
If you change the maps format, you'll need to update task_nommu.c too.
> @@ -313,13 +313,14 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
> end -= PAGE_SIZE;
>
> seq_setwidth(m, 25 + sizeof(void *) * 6 - 1);
I think the width needs to be adjusted for the new character.
> - seq_printf(m, "%08lx-%08lx %c%c%c%c %08llx %02x:%02x %lu ",
> + seq_printf(m, "%08lx-%08lx %c%c%c%c%c %08llx %02x:%02x %lu ",
Have you checked that no userspace tools that parse "maps" will break with
this flag addition?
> start,
> end,
> flags & VM_READ ? 'r' : '-',
> flags & VM_WRITE ? 'w' : '-',
> flags & VM_EXEC ? 'x' : '-',
> flags & VM_MAYSHARE ? 's' : 'p',
> + flags & VM_LOCKED ? 'l' : '-',
IIUC, the smaps file already includes the locked information in VmFlags as
"lo" (see show_smap_vma_flags), so I think you probably don't want this
patch at all.
-Kees
> pgoff,
> MAJOR(dev), MINOR(dev), ino);
>
> --
> 2.8.1
--
Kees Cook @outflux.net