android_kernel_msm-6.1_noth.../include/linux/sunrpc
Chuck Lever 0b056c224b svcrdma: Support RDMA_NOMSG requests
Currently the Linux server can not decode RDMA_NOMSG type requests.
Operations whose length exceeds the fixed size of RDMA SEND buffers,
like large NFSv4 CREATE(NF4LNK) operations, must be conveyed via
RDMA_NOMSG.

For an RDMA_MSG type request, the client sends the RPC/RDMA, RPC
headers, and some or all of the NFS arguments via RDMA SEND.

For an RDMA_NOMSG type request, the client sends just the RPC/RDMA
header via RDMA SEND. The request's read list contains elements for
the entire RPC message, including the RPC header.

NFSD expects the RPC/RMDA header and RPC header to be contiguous in
page zero of the XDR buffer. Add logic in the RDMA READ path to make
the read list contents land where the server prefers, when the
incoming message is a type RDMA_NOMSG message.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Reviewed-by: Steve Wise <swise@opengridcomputing.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
2015-01-15 15:01:47 -05:00
..
addr.h sunrpc: move address copy/cmp/convert routines and prototypes from clnt.h to addr.h 2013-02-05 09:41:14 -05:00
auth.h sunrpc: eliminate RPC_DEBUG 2014-11-24 17:31:46 -05:00
auth_gss.h sunrpc: remove __rcu annotation from struct gss_cl_ctx->gc_gss_ctx 2014-08-03 17:05:23 -04:00
bc_xprt.h SUNRPC: RPC callbacks may be split across several TCP segments 2014-02-11 14:01:20 -05:00
cache.h sunrpc: prepare NFS for 2038 2013-08-19 09:55:01 -04:00
clnt.h sunrpc: add debugfs file for displaying client rpc_task queue 2014-11-27 13:14:51 -05:00
debug.h sunrpc: add a debugfs rpc_xprt directory with an info file in it 2014-11-27 13:14:52 -05:00
gss_api.h svcrpc: store gss mech in svc_cred 2013-07-01 17:23:06 -04:00
gss_asn1.h
gss_err.h
gss_krb5.h sunrpc: remove "ec" argument from encrypt_v2 operation 2014-08-03 17:05:24 -04:00
gss_krb5_enctypes.h
metrics.h SUNRPC: serialize iostats updates 2014-11-25 16:22:15 -05:00
msg_prot.h nfsd4: check backchannel attributes on create_session 2013-04-09 16:53:56 -04:00
rpc_pipe_fs.h sunrpc: replace sunrpc_net->gssd_running flag with a more reliable check 2013-12-06 13:06:31 -05:00
rpc_rdma.h
sched.h sunrpc: eliminate RPC_TRACEPOINTS 2014-11-24 17:33:12 -05:00
stats.h
svc.h sunrpc: convert to lockless lookup of queued server threads 2014-12-09 11:22:22 -05:00
svc_rdma.h svcrdma: Support RDMA_NOMSG requests 2015-01-15 15:01:47 -05:00
svc_xprt.h sunrpc: eliminate the XPT_DETACHED flag 2014-12-01 12:45:26 -07:00
svcauth.h svcrpc: store gss mech in svc_cred 2013-07-01 17:23:06 -04:00
svcauth_gss.h
svcsock.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-04-12 17:31:22 -07:00
timer.h
types.h
xdr.h rpc: define xdr_restrict_buflen 2014-05-30 17:32:01 -04:00
xprt.h sunrpc: add a debugfs rpc_xprt directory with an info file in it 2014-11-27 13:14:52 -05:00
xprtrdma.h xprtrdma: Remove RPCRDMA_PERSISTENT_REGISTRATION macro 2014-07-31 16:22:59 -04:00
xprtsock.h sunrpc: add tracepoints in xs_tcp_data_recv 2014-11-24 12:53:35 -05:00