Re: [PATCH 00/28] Swap over NFS -v16

Pekka Enberg
2008-02-29T11:59:13Z

Hi Peter,

On Fri, Feb 29, 2008 at 1:51 PM, Peter Zijlstra <a.p.zijlstra@chello.nl> wrote:
> I made page->reserve into PG_emergency and made that bit stick for the
> lifetime of that page allocation. I then made kmem_is_emergency() look
> up the head page backing that allocation's slab and return
> PageEmergency().

[snip]

On Fri, Feb 29, 2008 at 1:51 PM, Peter Zijlstra <a.p.zijlstra@chello.nl> wrote:
> This is a stricter model than I had before, and has one ramification I'm
> not entirely sure I like.
>
> It means the page remains a reserve page throughout its lifetime, which
> means the slab remains a reserve slab throughout its lifetime. Therefore
> it may never be used for !reserve allocations. Which in turn generates
> complexities for the partial list.

Hmm, so why don't we then clear the PG_emergency flag then and
allocate a new fresh page to the reserves?

On Fri, Feb 29, 2008 at 1:51 PM, Peter Zijlstra <a.p.zijlstra@chello.nl> wrote:
> Does this sound like something I should pursuit? I feel it might
> complicate the slab allocators too much..

I can't answer that question until I see the code ;-). But overall, I
think it's better to put that code in SLUB rather than trying to work
around it elsewhere. The fact is, as soon as you have some sort of
reservation for _objects_, you need help from the SLUB allocator.

Pekka