• Chuck Lever's avatar
    svcrdma: Consult max_qp_init_rd_atom when accepting connections · 97cc3264
    Chuck Lever authored
    The target needs to return the lesser of the client's Inbound RDMA
    Read Queue Depth (IRD), provided in the connection parameters, and
    the local device's Outbound RDMA Read Queue Depth (ORD). The latter
    limit is max_qp_init_rd_atom, not max_qp_rd_atom.
    
    The svcrdma_ord value caps the ORD value for iWARP transports, which
    do not exchange ORD/IRD values at connection time. Since no other
    Linux kernel RDMA-enabled storage target sees fit to provide this
    cap, I'm removing it here too.
    
    initiator_depth is a u8, so ensure the computed ORD value does not
    overflow that field.
    Signed-off-by: default avatarChuck Lever <chuck.lever@oracle.com>
    Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
    97cc3264
svc_rdma.c 7.31 KB