sunrpc: use better NUMA affinities

Use NUMA aware allocations to reduce latencies and increase throughput.

sunrpc kthreads can use kthread_create_on_node() if pool_mode is
"percpu" or "pernode", and svc_prepare_thread()/svc_init_buffer() can
also take into account NUMA node affinity for memory allocations.

Signed-off-by: Eric Dumazet <[email protected]>
CC: "J. Bruce Fields" <[email protected]>
CC: Neil Brown <[email protected]>
CC: David Miller <[email protected]>
Reviewed-by: Greg Banks <[email protected]>
[[email protected]: fix up caller nfs41_callback_up]
Signed-off-by: J. Bruce Fields <[email protected]>
This commit is contained in:
Eric Dumazet 2011-07-28 20:04:09 +02:00 • committed by J. Bruce Fields
commit 11fd165c68
4 changed files with 28 additions and 13 deletions

View file

@ -282,7 +282,7 @@ int lockd_up(void)
/*
* Create the kernel thread and wait for it to start.
*/
nlmsvc_rqst = svc_prepare_thread(serv, &serv->sv_pools[0]);
nlmsvc_rqst = svc_prepare_thread(serv, &serv->sv_pools[0], NUMA_NO_NODE);
if (IS_ERR(nlmsvc_rqst)) {
error = PTR_ERR(nlmsvc_rqst);
nlmsvc_rqst = NULL;