SUNRPC: add sending,pending queue and max slot to xprt stats
authorAndy Adamson <andros@netapp.com>
Tue, 14 Feb 2012 21:19:18 +0000 (16:19 -0500)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Thu, 16 Feb 2012 19:55:27 +0000 (14:55 -0500)
commit15a4520621824a3c2eb2de2d1f3984bc1663d3c8
tree0ff258cf98774c72793ece98f2605f3fe132e352
parent1d96e80faff57b9eefa283b35716a384bbb3d5b3
SUNRPC: add sending,pending queue and max slot to xprt stats

With static RPC slots, the xprt backlog queue stats were useful in showing
when the transport (TCP) was starved by lack of RPC slots. The new dynamic
RPC slot code, commit d9ba131d8f58c0d2ff5029e7002ab43f913b36f9, always
provides an RPC slot and so only uses the xprt backlog queue when the
tcp_max_slot_table_entries value has been hit or when an allocation error
occurs. All requests are now placed on the xprt sending or pending queue which
need to be monitored for debugging.

The max_slot stat shows the maximum number of dynamic RPC slots reached which is
useful when debugging performance issues.

Add the new fields at the end of the mountstats xprt stanza so that mountstats
outputs the previous correct values and ignores the new fields. Bump
NFS_IOSTATS_VERS.

Signed-off-by: Andy Adamson <andros@netapp.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
include/linux/nfs_iostat.h
include/linux/sunrpc/xprt.h
net/sunrpc/xprt.c
net/sunrpc/xprtsock.c