2008-06-06 15:21:48

by Jeff Layton

[permalink] [raw]
Subject: Re: [PATCH 2/3] sunrpc: have pooled services make NUMA-friendly allocations

On Tue, 03 Jun 2008 07:18:02 -0400
Jeff Layton <[email protected]> wrote:

> Currently, svc_prepare_thread allocates memory using plain kmalloc()
> and alloc_page() calls, even for threads that are destined to run on
> different CPUs or NUMA nodes than the current one. Add a function to
> translate a poolid into a NUMA node, and have svc_prepare_thread and
> svc_init_buffer allocate memory on those nodes instead.
> Signed-off-by: Jeff Layton <[email protected]>
> ---

> - rqstp = kzalloc(sizeof(*rqstp), GFP_KERNEL);
> + rqstp = kzalloc_node(sizeof(*rqstp), GFP_KERNEL, node);

It looks like AKPM has taken the kzalloc_node patch into -mm. I'd
like to have you take this set into your tree at some point, but don't
want you to have to carry that VM patch too. Would you be amenable to me
changing the above to something like:

/* FIXME: change to kzalloc_node when/if it makes it to mainline */
rqstp = kmalloc_node(sizeof(*rqstp), GFP_KERNEL | __GFP_ZERO, node);

...and then we can make the FIXME change when mainline has the new inline?

Jeff Layton <[email protected]>