Commit 80d75fda authored by Shuhei Matsumoto's avatar Shuhei Matsumoto Committed by Tomasz Zawadzki
Browse files

nvme_rdma: Clean up releasing poller from poll group



We have two cases to call nvme_rdma_poll_group_put_poller().
For consistency, make the two cases the same sequence.

This will make the next patch easier. The next patch will release
poller from poll group when qpair is actually disconnected as
possible as we can.

Signed-off-by: default avatarShuhei Matsumoto <smatsumoto@nvidia.com>
Change-Id: I4178113d5277240e287e83a57e97cf32fd0f7457
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/14252


Community-CI: Mellanox Build Bot
Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarJim Harris <james.r.harris@intel.com>
Reviewed-by: default avatarAleksey Marchuk <alexeymar@nvidia.com>
Reviewed-by: default avatarBen Walker <benjamin.walker@intel.com>
parent 70c2bd88
Loading
Loading
Loading
Loading
+10 −7
Original line number Diff line number Diff line
@@ -2165,14 +2165,15 @@ nvme_rdma_stale_conn_retry(struct nvme_rdma_qpair *rqpair)
	SPDK_NOTICELOG("%d times, retry stale connnection to qpair (cntlid:%u, qid:%u).\n",
		       rqpair->stale_conn_retry_count, qpair->ctrlr->cntlid, qpair->id);

	if (qpair->poll_group) {
	if (rqpair->poller) {
		struct nvme_rdma_poll_group	*group;

		assert(qpair->poll_group);
		group = nvme_rdma_poll_group(qpair->poll_group);
		if (rqpair->poller) {

		nvme_rdma_poll_group_put_poller(group, rqpair->poller);

		rqpair->poller = NULL;
		}
		rqpair->cq = NULL;
	}

@@ -2970,12 +2971,14 @@ nvme_rdma_poll_group_disconnect_qpair(struct spdk_nvme_qpair *qpair)
	struct nvme_rdma_qpair		*rqpair = nvme_rdma_qpair(qpair);
	struct nvme_rdma_poll_group	*group;

	group = nvme_rdma_poll_group(qpair->poll_group);
	if (rqpair->poller) {
		group = nvme_rdma_poll_group(qpair->poll_group);

		nvme_rdma_poll_group_put_poller(group, rqpair->poller);

		rqpair->poller = NULL;
	}
		rqpair->cq = NULL;
	}

	return 0;
}