summaryrefslogtreecommitdiffstats
path: root/net/sunrpc
diff options
context:
space:
mode:
authorChuck Lever <chuck.lever@oracle.com>2024-02-04 18:16:50 -0500
committerChuck Lever <chuck.lever@oracle.com>2024-03-01 09:12:26 -0500
commit4c8c0fa0d32a99c75d732d541c13b3e59555f49f (patch)
treeb7a639c2286c3dad402bc6025696141c4eed1122 /net/sunrpc
parent5485d6ddfc7a3f4623c77e9a13fec41909c809cf (diff)
downloadlinux-4c8c0fa0d32a99c75d732d541c13b3e59555f49f.tar.gz
linux-4c8c0fa0d32a99c75d732d541c13b3e59555f49f.tar.bz2
linux-4c8c0fa0d32a99c75d732d541c13b3e59555f49f.zip
svcrdma: Update max_send_sges after QP is created
rdma_create_qp() can modify cap.max_send_sges. Copy the new value to the svcrdma transport so it is bound by the new limit instead of the requested one. Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Diffstat (limited to 'net/sunrpc')
-rw-r--r--net/sunrpc/xprtrdma/svc_rdma_transport.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/sunrpc/xprtrdma/svc_rdma_transport.c b/net/sunrpc/xprtrdma/svc_rdma_transport.c
index 8be0493797cf..839c0e80e5cd 100644
--- a/net/sunrpc/xprtrdma/svc_rdma_transport.c
+++ b/net/sunrpc/xprtrdma/svc_rdma_transport.c
@@ -467,6 +467,7 @@ static struct svc_xprt *svc_rdma_accept(struct svc_xprt *xprt)
trace_svcrdma_qp_err(newxprt, ret);
goto errout;
}
+ newxprt->sc_max_send_sges = qp_attr.cap.max_send_sge;
newxprt->sc_qp = newxprt->sc_cm_id->qp;
if (!(dev->attrs.device_cap_flags & IB_DEVICE_MEM_MGT_EXTENSIONS))