Re: [PATCH] NUMA policies in the slab allocator V2

From: Christoph Lameter
Date: Fri Nov 18 2005 - 12:20:01 EST


On Fri, 18 Nov 2005, Andi Kleen wrote:

> On Friday 18 November 2005 04:38, Christoph Lameter wrote:
> > You really want to run the useless fastpath? Examine lists etc for
> > the local node despite the policy telling you to get off node?
>
> Yes.

And this is only the begining of the troubles with such an approach.

Lets say you do the fastpath, find that there are no local slab
entries available anymore and then consult policy. Policy tells you to
interleave so you go to a different node and retrieve a slab entry from
the slab list for that node (which is likely not to need to do any page
allocation at all). Then this particular request has been fulfilled but
there are still no local slab entries.

Then the interleave counter may have been incremented without
allocating a page.

The next request would find no local slab entries available again and
repeats the same dysfunctional behavior.

But lets say that there is another process running concurrently that uses
default policy. It fills up the local slab entry cache. The task running
with interleave policy will now start to ignore policy and use the slab
entries generated by the page allocation of the other task.

Have a look at the slab allocator. I cannot imagine how you could make
the approach work.

> > Hmm. Is a hugepage ever allocated from interrupt context?
>
> They aren't.

Lets hope that it stays that way...
-
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/