Re: [PATCH 1/1] network memory allocator.

Arnd Bergmann
2006-08-15T20:21:22Z

Am Monday 14 August 2006 13:04 schrieb Evgeniy Polyakov:
> ?* full per CPU allocation and freeing (objects are never freed on
> ????????different CPU)

Many of your data structures are per cpu, but your underlying allocations
are all using regular kzalloc/__get_free_page/__get_free_pages functions.
Shouldn't these be converted to calls to kmalloc_node and alloc_pages_node
in order to get better locality on NUMA systems?

OTOH, we have recently experimented with doing the dev_alloc_skb calls
with affinity to the NUMA node that holds the actual network adapter, and
got significant improvements on the Cell blade server. That of course
may be a conflicting goal since it would mean having per-cpu per-node
page pools if any CPU is supposed to be able to allocate pages for use
as DMA buffers on any node.