]> www.infradead.org Git - users/hch/block.git/commit
nvme-rdma: send cntlid in the RDMA_CM_REQUEST Private Data
authorNiklas Cassel <cassel@kernel.org>
Thu, 15 Aug 2024 20:11:31 +0000 (22:11 +0200)
committerKeith Busch <kbusch@kernel.org>
Mon, 26 Aug 2024 15:11:19 +0000 (08:11 -0700)
commit03c3d7c74371a46d967fbf41628874ec04ddda96
tree6660dd2c16fa55d41338319688937d6de7bd3c23
parentff4a0a4088adc6a37293a9cce25bb56ad2f26a16
nvme-rdma: send cntlid in the RDMA_CM_REQUEST Private Data

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: Niklas Cassel <cassel@kernel.org>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Keith Busch <kbusch@kernel.org>
drivers/nvme/host/rdma.c
include/linux/nvme-rdma.h