Date: Sun, 11 Mar 2012 15:48:02 -0700 From: Linus Torvalds <torvalds@...ux-foundation.org> To: Oleg Nesterov <oleg@...hat.com> Cc: Djalal Harouni <tixxdz@...ndz.org>, linux-kernel@...r.kernel.org, kernel-hardening@...ts.openwall.com, Andrew Morton <akpm@...ux-foundation.org>, Al Viro <viro@...iv.linux.org.uk>, Alexey Dobriyan <adobriyan@...il.com>, "Eric W. Biederman" <ebiederm@...ssion.com>, Vasiliy Kulikov <segoon@...nwall.com>, Kees Cook <keescook@...omium.org>, Solar Designer <solar@...nwall.com>, WANG Cong <xiyou.wangcong@...il.com>, James Morris <james.l.morris@...cle.com>, linux-security-module@...r.kernel.org, linux-fsdevel@...r.kernel.org, Alan Cox <alan@...rguk.ukuu.org.uk>, Greg KH <gregkh@...uxfoundation.org>, Ingo Molnar <mingo@...e.hu>, Stephen Wilson <wilsons@...rt.ca>, "Jason A. Donenfeld" <Jason@...c4.com> Subject: Re: [PATCH 1/9] exec: add a global execve counter On Sun, Mar 11, 2012 at 10:25 AM, Oleg Nesterov <oleg@...hat.com> wrote: > > It should be per-process, signal_struct makes more sense. Or may be > mm_struct. I do wonder if we shouldn't just consider the "struct mm_struct" pointer to *be* the unique exec ID. It's what /proc/pid/mem does, and it works fine, and allows us to just use a normal pointer as the unique ID. Just increment the mm_count for the thing, and hold a reference to it, and now you're all done. By definition an execve() will change the mm struct, and if you have a refcount to the old one, it won't be re-used. And it's not a huge allocation, although it would definitely be good to put that thing on a diet. And as long as we use 'mm_count', not 'mm_users', it won't pin anything else in memory. That's part of the whole point of the doubly-refcounted thing. Linus
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.