nvme-rdma: introduce NVME_RDMA_MAX_METADATA_QUEUE_SIZE definition
authorMax Gurtovoy <mgurtovoy@nvidia.com>
Tue, 23 Jan 2024 14:40:29 +0000 (16:40 +0200)
committerKeith Busch <kbusch@kernel.org>
Sat, 2 Mar 2024 23:18:08 +0000 (15:18 -0800)
This definition will be used by controllers that are configured with
metadata support. For now, both regular and metadata controllers have
the same maximal queue size but later commit will increase the maximal
queue size for regular RDMA controllers to 256.
We'll keep the maximal queue size for metadata controllers to be 128
since there are more resources that are needed for metadata operations
and 128 is the optimal size found for metadata controllers base on
testing.

Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Reviewed-by: Israel Rukshin <israelr@nvidia.com>
Signed-off-by: Max Gurtovoy <mgurtovoy@nvidia.com>
Signed-off-by: Keith Busch <kbusch@kernel.org>
drivers/nvme/target/rdma.c
include/linux/nvme-rdma.h

index 3a0f2c170f4c16f6c1fa6f09c2cac948403550fb..b3f8416ec80302124649ee8c278ae93259445a32 100644 (file)
@@ -2015,6 +2015,8 @@ static u8 nvmet_rdma_get_mdts(const struct nvmet_ctrl *ctrl)
 
 static u16 nvmet_rdma_get_max_queue_size(const struct nvmet_ctrl *ctrl)
 {
+       if (ctrl->pi_support)
+               return NVME_RDMA_MAX_METADATA_QUEUE_SIZE;
        return NVME_RDMA_MAX_QUEUE_SIZE;
 }
 
index 146dd2223a5fee961bc9299203cf0b5845c8c087..d0b9941911a1c88cc59871b20bc1ab2c4e487651 100644 (file)
@@ -8,7 +8,8 @@
 
 #define NVME_RDMA_IP_PORT              4420
 
-#define NVME_RDMA_MAX_QUEUE_SIZE       128
+#define NVME_RDMA_MAX_QUEUE_SIZE 128
+#define NVME_RDMA_MAX_METADATA_QUEUE_SIZE 128
 
 enum nvme_rdma_cm_fmt {
        NVME_RDMA_CM_FMT_1_0 = 0x0,