diff options
author | Andy Adamson <andros@netapp.com> | 2010-01-26 21:24:04 -0500 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2010-02-10 08:31:02 -0500 |
commit | ba17686f62db88f6a591121e768a0c83a2a2647d (patch) | |
tree | b32b611d474e062d908af555b012dec0d4f703a5 /net/sunrpc | |
parent | 9733f0d9289cbcac4fa03db0cb5aec1ab01c6bc9 (diff) | |
download | op-kernel-dev-ba17686f62db88f6a591121e768a0c83a2a2647d.zip op-kernel-dev-ba17686f62db88f6a591121e768a0c83a2a2647d.tar.gz |
nfs41 do not allocate unused back channel pages
Signed-off-by: Andy Adamson <andros@netapp.com>
[Trond.Myklebust@netapp.com: moved definition of svc_is_backchannel()
into include/linux/sunrpc/bc_xprt.h.]
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'net/sunrpc')
-rw-r--r-- | net/sunrpc/svc.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/net/sunrpc/svc.c b/net/sunrpc/svc.c index 538ca43..6dcf8c9 100644 --- a/net/sunrpc/svc.c +++ b/net/sunrpc/svc.c @@ -506,6 +506,10 @@ svc_init_buffer(struct svc_rqst *rqstp, unsigned int size) { unsigned int pages, arghi; + /* bc_xprt uses fore channel allocated buffers */ + if (svc_is_backchannel(rqstp)) + return 1; + pages = size / PAGE_SIZE + 1; /* extra page as we hold both request and reply. * We assume one is at most one page */ |