Re: [RFC] perf: mmap2 not covering VM_CLONE regions

From: Andi Kleen
Date: Thu Oct 03 2013 - 14:32:32 EST


On Thu, Oct 03, 2013 at 10:55:28AM +0200, Stephane Eranian wrote:
> On Wed, Oct 2, 2013 at 10:31 PM, Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
> > On Wed, Oct 02, 2013 at 12:38:54PM -0700, Kees Cook wrote:
> >> On Wed, Oct 2, 2013 at 12:00 PM, Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
> >> > On Wed, Oct 02, 2013 at 11:10:15AM -0700, Kees Cook wrote:
> >> >> Seems like a simple enough solution. Surely there must be a catch. :)
> >> >
> >> > I didn't want to add this to the core mm just for perf..
> >>
> >> It seems like it would be pretty inexpensive. It might also be
> >> valuable in other situations. Not that I can think of any at the
> >> moment. Additionally, it could likely be hidden by a CONFIG, so that
> >> if perf isn't built in, there's no change?
> >
> > You optimist, you think you can build a kernel without perf? ;-)
> >
> > Its just that I would hate to add more completely global state to the
> > fork() path. The tasklist_lock might be hard to crack, but at least the
> > pid-hash could use per bucket locks (it doesn't apparently).
> >
> > I suppose people don't really care that much about fork() performance;
> > which is sad. KSM and THP also add their own global locks :-(
>
> I don't know the MM code but I assume that that vm_mm struct is
> allocated dynamically
> and maybe you already grabbing a lock while doing this. Could we
> leverage that lock
> to increment a global generation number?

I thought Pavel added a mm identifier for criu, but can't find it
right now.

-Andi

--
ak@xxxxxxxxxxxxxxx -- Speaking for myself only
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/