summaryrefslogtreecommitdiffstats
path: root/net/sunrpc/xprt.c
diff options
context:
space:
mode:
authorWeston Andros Adamson <dros@netapp.com>2012-02-17 13:15:24 -0500
committerTrond Myklebust <Trond.Myklebust@netapp.com>2012-02-17 13:39:47 -0500
commit0a702195234eb77c4097148285cccf7f095de9cf (patch)
tree40fead6b131fb3c24e3cd85e39fbba8057196457 /net/sunrpc/xprt.c
parentb6bf6e7d6f6fae1ddcae9e02dfe676bdc8fe892c (diff)
downloadlinux-0a702195234eb77c4097148285cccf7f095de9cf.tar.bz2
NFS: include filelayout DS rpc stats in mountstats
Include RPC statistics from all data servers in /proc/self/mountstats for pNFS filelayout mounts. Signed-off-by: Weston Andros Adamson <dros@netapp.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'net/sunrpc/xprt.c')
-rw-r--r--net/sunrpc/xprt.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/net/sunrpc/xprt.c b/net/sunrpc/xprt.c
index 739df8a11382..32e37945a840 100644
--- a/net/sunrpc/xprt.c
+++ b/net/sunrpc/xprt.c
@@ -1137,7 +1137,10 @@ void xprt_release(struct rpc_task *task)
return;
xprt = req->rq_xprt;
- rpc_count_iostats(task);
+ if (task->tk_ops->rpc_count_stats != NULL)
+ task->tk_ops->rpc_count_stats(task, task->tk_calldata);
+ else if (task->tk_client)
+ rpc_count_iostats(task, task->tk_client->cl_metrics);
spin_lock_bh(&xprt->transport_lock);
xprt->ops->release_xprt(xprt, task);
if (xprt->ops->release_request)