aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/sunrpc/svc_rdma.h
diff options
context:
space:
mode:
authorChuck Lever <chuck.lever@oracle.com>2015-06-04 11:21:32 -0400
committerJ. Bruce Fields <bfields@redhat.com>2015-06-04 16:56:01 -0400
commit0380a3f37540ad0582b3c749a74fc127af914689 (patch)
treeb16bd25dca27461439076b4b607f9b8339a714c0 /include/linux/sunrpc/svc_rdma.h
parentsvcrdma: Replace GFP_KERNEL in a loop with GFP_NOFAIL (diff)
downloadlinux-dev-0380a3f37540ad0582b3c749a74fc127af914689.tar.xz
linux-dev-0380a3f37540ad0582b3c749a74fc127af914689.zip
svcrdma: Add a separate "max data segs macro for svcrdma
The server and client maximum are architecturally independent. Allow changing one without affecting the other. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'include/linux/sunrpc/svc_rdma.h')
-rw-r--r--include/linux/sunrpc/svc_rdma.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/linux/sunrpc/svc_rdma.h b/include/linux/sunrpc/svc_rdma.h
index d26384b22126..cb94ee4181d4 100644
--- a/include/linux/sunrpc/svc_rdma.h
+++ b/include/linux/sunrpc/svc_rdma.h
@@ -172,6 +172,13 @@ struct svcxprt_rdma {
#define RDMAXPRT_SQ_PENDING 2
#define RDMAXPRT_CONN_PENDING 3
+#define RPCRDMA_MAX_SVC_SEGS (64) /* server max scatter/gather */
+#if RPCSVC_MAXPAYLOAD < (RPCRDMA_MAX_SVC_SEGS << PAGE_SHIFT)
+#define RPCRDMA_MAXPAYLOAD RPCSVC_MAXPAYLOAD
+#else
+#define RPCRDMA_MAXPAYLOAD (RPCRDMA_MAX_SVC_SEGS << PAGE_SHIFT)
+#endif
+
#define RPCRDMA_LISTEN_BACKLOG 10
/* The default ORD value is based on two outstanding full-size writes with a
* page size of 4k, or 32k * 2 ops / 4k = 16 outstanding RDMA_READ. */