Re: [RFC] Track mlock()ed pages

Christoph Lameter
2007-01-26T18:23:51Z

On Fri, 26 Jan 2007, Andrew Morton wrote:

> > Large amounts of mlocked pages may be a problem for
> >
> > 1. Reclaim behavior.
> >
> > 2. Defragmentation
> >
>
> We know that. What has that to do with this patch?

Knowing how much mlocked pages are where is necessary to solve these
issues.

> > > You could perhaps go for a walk across all the other vmas which presently
> > > map this page. If any of them have VM_LOCKED, don't increment the counter.
> > > Similar on removal: only decrement the counter when the final mlocked VMA
> > > is dropping the pte.
> >
> > For that we would need an additional refcount for vmlocked maps in the
> > page struct.
>
> No you don't. The refcount is already there. It is "the sum of the VM_LOCKED
> VMAs which map this page".
>
> It might be impractical or expensive to calculate it, but it's there.

Correct. Its so expensive that it cannot be used to build vm stats for
mlocked pages. F.e. Determination of the final mlocked VMA dropping the
page would require a scan over all vmas mapping the page.