Re: [PATCH] mm: Revert pinned_vm braindamage

From: Ingo Molnar
Date: Thu Jun 20 2013 - 07:34:41 EST



* Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote:

> On Thu, 13 Jun 2013, Andrew Morton wrote:
> > Let's try to get this wrapped up?
> >
> > On Thu, 6 Jun 2013 14:43:51 +0200 Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
> >
> > >
> > > Patch bc3e53f682 ("mm: distinguish between mlocked and pinned pages")
> > > broke RLIMIT_MEMLOCK.
> >
> > I rather like what bc3e53f682 did, actually. RLIMIT_MEMLOCK limits the
> > amount of memory you can mlock(). Nice and simple.
> >
> > This pinning thing which infiniband/perf are doing is conceptually
> > different and if we care at all, perhaps we should be looking at adding
> > RLIMIT_PINNED.
>
> Actually PINNED is just a stronger version of MEMLOCK. PINNED and
> MEMLOCK are both preventing the page from being paged out. PINNED adds
> the constraint of preventing minor faults as well.
>
> So I think the really important tuning knob is the limitation of pages
> which cannot be paged out. And this is what RLIMIT_MEMLOCK is about.
>
> Now if you want to add RLIMIT_PINNED as well, then it only limits the
> number of pages which cannot create minor faults, but that does not
> affect the limitation of total pages which cannot be paged out.

Agreed.

( Furthermore, the RLIMIT_MEMLOCK semantics change actively broke code so
this is not academic and it would be nice to progress with it. )

Thanks,

Ingo
--
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/