The server's splice read path is used by the majority of exported filesystems. At last month's bake-a-thon, we tossed around some ideas about how to improve benchmarking and test coverage of the NFS server's vectored-read path, which is a fallback. One way to do this would be to expose a switch that can be set by test harnesses to disable splice reads. As an initial step, hoist RQ_SPLICE_OK out of the RPC layer. Later, I'll add a netlink command to as a switch between "use splice if possible" and "always use vectored reads". (I don't want to collide with the work Lorenzo is doing). Changes since v1: - Address "undefined reference to `svcauth_gss_flavor'" --- Chuck Lever (4): SUNRPC: Add a server-side API for retrieving an RPC's pseudoflavor NFSD: Replace RQ_SPLICE_OK in nfsd_read() NFSD: Modify NFSv4 to use nfsd_read_splice_ok() SUNRPC: Remove RQ_SPLICE_OK fs/nfsd/nfs4proc.c | 7 +++++-- fs/nfsd/nfs4xdr.c | 13 ++++++++----- fs/nfsd/vfs.c | 26 +++++++++++++++++++++++++- fs/nfsd/vfs.h | 1 + fs/nfsd/xdr4.h | 1 + include/linux/sunrpc/svc.h | 2 -- include/linux/sunrpc/svcauth.h | 7 ++++++- include/trace/events/sunrpc.h | 1 - net/sunrpc/auth_gss/svcauth_gss.c | 16 ++++++---------- net/sunrpc/svc.c | 2 -- net/sunrpc/svcauth.c | 16 ++++++++++++++++ 11 files changed, 68 insertions(+), 24 deletions(-) -- Chuck Lever