• Niklas Cassel's avatar
    nvme-rdma: send cntlid in the RDMA_CM_REQUEST Private Data · 03c3d7c7
    Niklas Cassel authored
    
    
    When sending a RDMA_CM_REQUEST, the NVMe RDMA Transport Specification
    allows you to populate the cntlid field in the RDMA_CM_REQUEST Private
    Data.
    
    The cntlid is returned by the target on completion of the first
    RDMA_CM_REQUEST command (which creates the admin queue).
    
    The cntlid field can then be populated by the host when the I/O queues
    are created (using additional RDMA_CM_REQUEST commands), such that the
    target can perform extra validation for additional RDMA_CM_REQUEST
    commands.
    
    This additional error code and error message is also added, such that
    nvme_rdma_cm_msg() will display the proper error message if the target
    fails the RDMA_CM_REQUEST command because of this extra validation.
    Signed-off-by: default avatarNiklas Cassel <cassel@kernel.org>
    Reviewed-by: default avatarSagi Grimberg <sagi@grimberg.me>
    Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
    Signed-off-by: default avatarKeith Busch <kbusch@kernel.org>
    03c3d7c7
rdma.c 62.8 KB