[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160613204312.GP3346@outflux.net>
Date: Mon, 13 Jun 2016 13:43:13 -0700
From: Kees Cook <kees@...flux.net>
To: Topi Miettinen <toiwoton@...il.com>
Cc: linux-kernel@...r.kernel.org,
Andrew Morton <akpm@...ux-foundation.org>,
Michal Hocko <mhocko@...e.com>,
Konstantin Khlebnikov <koct9i@...il.com>,
Vlastimil Babka <vbabka@...e.cz>,
"Kirill A. Shutemov" <kirill.shutemov@...ux.intel.com>,
Jerome Marchand <jmarchan@...hat.com>,
Laurent Dufour <ldufour@...ux.vnet.ibm.com>,
Naoya Horiguchi <n-horiguchi@...jp.nec.com>,
Gerald Schaefer <gerald.schaefer@...ibm.com>,
Johannes Weiner <hannes@...xchg.org>
Subject: Re: [RFC 18/18] proc: present VM_LOCKED memory in /proc/self/maps
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@...il.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
Powered by blists - more mailing lists