linux-stable/net/sunrpc
Greg Banks bfd241600a [PATCH] knfsd: make rpc threads pools numa aware
Actually implement multiple pools.  On NUMA machines, allocate a svc_pool per
NUMA node; on SMP a svc_pool per CPU; otherwise a single global pool.  Enqueue
sockets on the svc_pool corresponding to the CPU on which the socket bh is run
(i.e.  the NIC interrupt CPU).  Threads have their cpu mask set to limit them
to the CPUs in the svc_pool that owns them.

This is the patch that allows an Altix to scale NFS traffic linearly
beyond 4 CPUs and 4 NICs.

Incorporates changes and feedback from Neil Brown, Trond Myklebust, and
Christoph Hellwig.

Signed-off-by: Greg Banks <gnb@melbourne.sgi.com>
Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-10-02 07:57:20 -07:00
..
auth_gss [SUNRPC]: more sunrpc endianness annotations 2006-09-28 18:01:22 -07:00
Makefile [PATCH] RPC: introduce client-side transport switch 2005-09-23 12:38:12 -04:00
auth.c [SUNRPC]: trivial endianness annotations 2006-09-28 18:01:21 -07:00
auth_null.c [SUNRPC]: trivial endianness annotations 2006-09-28 18:01:21 -07:00
auth_unix.c [SUNRPC]: trivial endianness annotations 2006-09-28 18:01:21 -07:00
cache.c [PATCH] knfsd: fix race related problem when adding items to and svcrpc auth cache 2006-08-06 08:57:47 -07:00
clnt.c [SUNRPC]: trivial endianness annotations 2006-09-28 18:01:21 -07:00
pmap_clnt.c [SUNRPC]: trivial endianness annotations 2006-09-28 18:01:21 -07:00
rpc_pipe.c [PATCH] r/o bind mount prepwork: inc_nlink() helper 2006-10-01 00:39:30 -07:00
sched.c [PATCH] Really ignore kmem_cache_destroy return value 2006-09-27 08:26:10 -07:00
socklib.c [NET]: Replace CHECKSUM_HW by CHECKSUM_PARTIAL/CHECKSUM_COMPLETE 2006-09-22 14:53:53 -07:00
stats.c [NET]: Conversions from kmalloc+memset to k(z|c)alloc. 2006-07-21 14:51:30 -07:00
sunrpc_syms.c [PATCH] knfsd: add svc_set_num_threads 2006-10-02 07:57:19 -07:00
svc.c [PATCH] knfsd: make rpc threads pools numa aware 2006-10-02 07:57:20 -07:00
svcauth.c [SUNRPC]: trivial endianness annotations 2006-09-28 18:01:21 -07:00
svcauth_unix.c [PATCH] knfsd: remove an unused variable from auth_unix_lookup() 2006-10-02 07:57:17 -07:00
svcsock.c [PATCH] knfsd: make rpc threads pools numa aware 2006-10-02 07:57:20 -07:00
sysctl.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
timer.c SUNRPC: remove extraneous header inclusions 2006-09-22 23:24:47 -04:00
xdr.c [SUNRPC]: trivial endianness annotations 2006-09-28 18:01:21 -07:00
xprt.c [SUNRPC]: trivial endianness annotations 2006-09-28 18:01:21 -07:00
xprtsock.c [SUNRPC]: trivial endianness annotations 2006-09-28 18:01:21 -07:00