Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2ac17c28 authored by Sagi Grimberg's avatar Sagi Grimberg Committed by Jens Axboe
Browse files

nvme-rdma: Don't use tl_retry_count



Always use the maximum qp retry count as the
error recovery timeout is dictated from the nvme
keep-alive.

Signed-off-by: default avatarSagi Grimberg <sagi@grimberg.me>
Signed-off-by: default avatarJens Axboe <axboe@fb.com>
parent 458a9632
Loading
Loading
Loading
Loading
+3 −6
Original line number Original line Diff line number Diff line
@@ -117,7 +117,6 @@ struct nvme_rdma_ctrl {
	u32			queue_count;
	u32			queue_count;


	/* other member variables */
	/* other member variables */
	unsigned short		tl_retry_count;
	struct blk_mq_tag_set	tag_set;
	struct blk_mq_tag_set	tag_set;
	struct work_struct	delete_work;
	struct work_struct	delete_work;
	struct work_struct	reset_work;
	struct work_struct	reset_work;
@@ -1277,8 +1276,8 @@ static int nvme_rdma_route_resolved(struct nvme_rdma_queue *queue)
	param.flow_control = 1;
	param.flow_control = 1;


	param.responder_resources = queue->device->dev->attrs.max_qp_rd_atom;
	param.responder_resources = queue->device->dev->attrs.max_qp_rd_atom;
	/* rdma_cm will clamp down to max QP retry count (7) */
	/* maximum retry count */
	param.retry_count = ctrl->tl_retry_count;
	param.retry_count = 7;
	param.rnr_retry_count = 7;
	param.rnr_retry_count = 7;
	param.private_data = &priv;
	param.private_data = &priv;
	param.private_data_len = sizeof(priv);
	param.private_data_len = sizeof(priv);
@@ -1909,7 +1908,6 @@ static struct nvme_ctrl *nvme_rdma_create_ctrl(struct device *dev,


	ctrl->queue_count = opts->nr_io_queues + 1; /* +1 for admin queue */
	ctrl->queue_count = opts->nr_io_queues + 1; /* +1 for admin queue */
	ctrl->ctrl.sqsize = opts->queue_size;
	ctrl->ctrl.sqsize = opts->queue_size;
	ctrl->tl_retry_count = opts->tl_retry_count;
	ctrl->ctrl.kato = opts->kato;
	ctrl->ctrl.kato = opts->kato;


	ret = -ENOMEM;
	ret = -ENOMEM;
@@ -1986,8 +1984,7 @@ static struct nvme_ctrl *nvme_rdma_create_ctrl(struct device *dev,
static struct nvmf_transport_ops nvme_rdma_transport = {
static struct nvmf_transport_ops nvme_rdma_transport = {
	.name		= "rdma",
	.name		= "rdma",
	.required_opts	= NVMF_OPT_TRADDR,
	.required_opts	= NVMF_OPT_TRADDR,
	.allowed_opts	= NVMF_OPT_TRSVCID | NVMF_OPT_TL_RETRY_COUNT |
	.allowed_opts	= NVMF_OPT_TRSVCID | NVMF_OPT_RECONNECT_DELAY,
			  NVMF_OPT_RECONNECT_DELAY,
	.create_ctrl	= nvme_rdma_create_ctrl,
	.create_ctrl	= nvme_rdma_create_ctrl,
};
};