Messages in this thread | | | Date | Sat, 5 Jun 2004 12:33:19 +0200 | From | Andi Kleen <> | Subject | Re: [PATCH] Use numa policy API for boot time policy |
| |
On Sat, 05 Jun 2004 12:20:53 +0200 Manfred Spraul <manfred@colorfullife.com> wrote:
> Andi Kleen wrote: > > >On Sat, 05 Jun 2004 03:56:53 +0200 > >Manfred Spraul <manfred@colorfullife.com> wrote: > > > > > >>Does it work for order != 0 allocations? It's important that the big > >>hash tables do not end up all in node 0. AFAICS alloc_pages_current() > >>calls interleave_nodes() only for order==0 allocs. > >> > >> > > > >That's correct. It will only work for order 0 allocations. > > > > > > > What's the purpose of the "&& order == 0)" test for MPOL_INTERLEAVE in > alloc_pages_current? > What would break if it's removed?
Nothing. Just the interleaving will not be very good. Just the vma interleaving relies on order 0 right now.
But I would really try to use vmalloc() for this. In fact you don't even need vmalloc_interleaved(), because the normal vmalloc allocation together with the interleave policy should do the right thing.
> > And what about in_interrupt() allocations? During boot everything should > be interleaved - I'd modify default_policy to MPOL_INTERLEAVE instead of > setting process affinity.
Better don't do that. It may break some subtle assumptions.
I guess the in_interrupt() allocations will have to live with that. They should be relatively rare.
In theory you could add a system_state == SYSTEM_BOOTING check again, but polluting the fast path for this would be imho overkill.
-Andi
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |