OpenCloudOS-Kernel/net/sunrpc/xprtrdma
Chuck Lever 6b1184cd4f xprtrdma: Allocate RPC/RDMA receive buffer separately from struct rpcrdma_rep
The rr_base field is currently the buffer where RPC replies land.

An RPC/RDMA reply header lands in this buffer. In some cases an RPC
reply header also lands in this buffer, just after the RPC/RDMA
header.

The inline threshold is an agreed-on size limit for RDMA SEND
operations that pass from server and client. The sum of the
RPC/RDMA reply header size and the RPC reply header size must be
less than this threshold.

The largest RDMA RECV that the client should have to handle is the
size of the inline threshold. The receive buffer should thus be the
size of the inline threshold, and not related to RPCRDMA_MAX_SEGS.

RPC replies received via RDMA WRITE (long replies) are caught in
rq_rcv_buf, which is the second half of the RPC send buffer. Ie,
such replies are not involved in any way with rr_base.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
2015-01-30 10:47:49 -05:00
..
Makefile xprtrdma: add separate Kconfig options for NFSoRDMA client and server support 2014-03-28 18:02:12 -04:00
rpc_rdma.c xprtrdma: Allocate RPC/RDMA receive buffer separately from struct rpcrdma_rep 2015-01-30 10:47:49 -05:00
svc_rdma.c net: Convert uses of typedef ctl_table to struct ctl_table 2013-06-13 02:36:09 -07:00
svc_rdma_marshal.c svcrdma: underflow issue in decode_write_list() 2013-07-15 11:46:23 -04:00
svc_rdma_recvfrom.c svcrdma: Add zero padding if the client doesn't send it 2014-07-22 16:40:21 -04:00
svc_rdma_sendto.c svcrdma: send_write() must not overflow the device's max sge 2014-07-11 15:03:48 -04:00
svc_rdma_transport.c svcrdma: advertise the correct max payload 2014-09-29 14:35:18 -04:00
transport.c xprtrdma: Allocate RPC/RDMA send buffer separately from struct rpcrdma_req 2015-01-30 10:47:49 -05:00
verbs.c xprtrdma: Allocate RPC/RDMA receive buffer separately from struct rpcrdma_rep 2015-01-30 10:47:49 -05:00
xprt_rdma.h xprtrdma: Allocate RPC/RDMA receive buffer separately from struct rpcrdma_rep 2015-01-30 10:47:49 -05:00