|
@@ -872,6 +872,8 @@ static struct svc_xprt *svc_rdma_accept(struct svc_xprt *xprt)
|
|
* capabilities of this particular device */
|
|
* capabilities of this particular device */
|
|
newxprt->sc_max_sge = min((size_t)devattr.max_sge,
|
|
newxprt->sc_max_sge = min((size_t)devattr.max_sge,
|
|
(size_t)RPCSVC_MAXPAGES);
|
|
(size_t)RPCSVC_MAXPAGES);
|
|
|
|
+ newxprt->sc_max_sge_rd = min_t(size_t, devattr.max_sge_rd,
|
|
|
|
+ RPCSVC_MAXPAGES);
|
|
newxprt->sc_max_requests = min((size_t)devattr.max_qp_wr,
|
|
newxprt->sc_max_requests = min((size_t)devattr.max_qp_wr,
|
|
(size_t)svcrdma_max_requests);
|
|
(size_t)svcrdma_max_requests);
|
|
newxprt->sc_sq_depth = RPCRDMA_SQ_DEPTH_MULT * newxprt->sc_max_requests;
|
|
newxprt->sc_sq_depth = RPCRDMA_SQ_DEPTH_MULT * newxprt->sc_max_requests;
|
|
@@ -1046,6 +1048,7 @@ static struct svc_xprt *svc_rdma_accept(struct svc_xprt *xprt)
|
|
" remote_ip : %pI4\n"
|
|
" remote_ip : %pI4\n"
|
|
" remote_port : %d\n"
|
|
" remote_port : %d\n"
|
|
" max_sge : %d\n"
|
|
" max_sge : %d\n"
|
|
|
|
+ " max_sge_rd : %d\n"
|
|
" sq_depth : %d\n"
|
|
" sq_depth : %d\n"
|
|
" max_requests : %d\n"
|
|
" max_requests : %d\n"
|
|
" ord : %d\n",
|
|
" ord : %d\n",
|
|
@@ -1059,6 +1062,7 @@ static struct svc_xprt *svc_rdma_accept(struct svc_xprt *xprt)
|
|
ntohs(((struct sockaddr_in *)&newxprt->sc_cm_id->
|
|
ntohs(((struct sockaddr_in *)&newxprt->sc_cm_id->
|
|
route.addr.dst_addr)->sin_port),
|
|
route.addr.dst_addr)->sin_port),
|
|
newxprt->sc_max_sge,
|
|
newxprt->sc_max_sge,
|
|
|
|
+ newxprt->sc_max_sge_rd,
|
|
newxprt->sc_sq_depth,
|
|
newxprt->sc_sq_depth,
|
|
newxprt->sc_max_requests,
|
|
newxprt->sc_max_requests,
|
|
newxprt->sc_ord);
|
|
newxprt->sc_ord);
|