Re: [patch 3/9] mempool - Make mempools NUMA aware

Matthew Dobson
2006-01-26T23:24:34Z

Christoph Lameter wrote:
> On Thu, 26 Jan 2006, Matthew Dobson wrote:
>
>
>>Not all requests for memory from a specific node are performance
>>enhancements, some are for correctness. With large machines, especially as
>
>
> alloc_pages_node and friends do not guarantee allocation on that specific
> node. That argument for "correctness" is bogus.

alloc_pages_node() does not guarantee allocation on a specific node, but
calling __alloc_pages() with a specific nodelist would.

>>>You do not need this....
>>
>>I do not agree...
>
>
> There is no way that you would need this patch.

My goal was to not change the behavior of the slab allocator when inserting
a mempool-backed allocator "under" it. Without support for at least
*requesting* allocations from a specific node when allocating from a
mempool, this would change how the slab allocator works. That would be
bad. The slab allocator now does not guarantee that, for example, a
kmalloc_node() request is satisfied by memory from the requested node, but
it does at least TRY. Without adding mempool_alloc_node() then I would
never be able to even TRY to satisfy a mempool-backed kmalloc_node()
request from the correct node. I believe that would constitute an
unacceptable breakage from normal, documented behavior. So, I *do* need
this patch.

-Matt