Re: [RFC/T/D][PATCH 2/2] Linux/Guest cooperative unmapped page cache control

Balbir Singh
2010-06-14T16:58:53Z

* Dave Hansen <dave@linux.vnet.ibm.com> [2010-06-14 08:12:56]:

> On Mon, 2010-06-14 at 14:18 +0530, Balbir Singh wrote:
> > 1. A slab page will not be freed until the entire page is free (all
> > slabs have been kfree'd so to speak). Normal reclaim will definitely
> > free this page, but a lot of it depends on how frequently we are
> > scanning the LRU list and when this page got added.
>
> You don't have to be freeing entire slab pages for the reclaim to have
> been useful. You could just be making space so that _future_
> allocations fill in the slab holes you just created. You may not be
> freeing pages, but you're reducing future system pressure.
>
> If unmapped page cache is the easiest thing to evict, then it should be
> the first thing that goes when a balloon request comes in, which is the
> case this patch is trying to handle. If it isn't the easiest thing to
> evict, then we _shouldn't_ evict it.
>

Like I said earlier, a lot of that works correctly as you said, but it
is also an idealization. If you've got duplicate pages and you know
that they are duplicated and can be retrieved at a lower cost, why
wouldn't we go after them first?

--
Three Cheers,
Balbir