diff options
author | Chuck Lever <chuck.lever@oracle.com> | 2024-02-05 02:16:50 +0300 |
---|---|---|
committer | Chuck Lever <chuck.lever@oracle.com> | 2024-03-01 17:12:26 +0300 |
commit | 4c8c0fa0d32a99c75d732d541c13b3e59555f49f (patch) | |
tree | b7a639c2286c3dad402bc6025696141c4eed1122 | |
parent | 5485d6ddfc7a3f4623c77e9a13fec41909c809cf (diff) | |
download | linux-4c8c0fa0d32a99c75d732d541c13b3e59555f49f.tar.xz |
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>
-rw-r--r-- | net/sunrpc/xprtrdma/svc_rdma_transport.c | 1 |
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)) |