Commit 825c9890 authored by Jim Harris's avatar Jim Harris
Browse files

nvmf/tcp: add nvmf_qpair_set_ctrlr helper function



This will be useful in an upcoming patch.

Signed-off-by: default avatarJim Harris <jim.harris@samsung.com>
Change-Id: I9f995d77fb8a8aea6181ea8ad3e3fa15922c103c
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22649


Community-CI: Mellanox Build Bot
Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarShuhei Matsumoto <smatsumoto@nvidia.com>
Reviewed-by: default avatarKonrad Sztyber <konrad.sztyber@intel.com>
parent 1128edc1
Loading
Loading
Loading
Loading
+15 −3
Original line number Diff line number Diff line
@@ -216,6 +216,18 @@ nvmf_ctrlr_start_keep_alive_timer(struct spdk_nvmf_ctrlr *ctrlr)
	}
}

static void
nvmf_qpair_set_ctrlr(struct spdk_nvmf_qpair *qpair, struct spdk_nvmf_ctrlr *ctrlr)
{
	if (qpair->ctrlr != NULL) {
		/* Admin queues will call this function twice. */
		assert(qpair->ctrlr == ctrlr);
		return;
	}

	qpair->ctrlr = ctrlr;
}

static int _retry_qid_check(void *ctx);

static void
@@ -250,14 +262,14 @@ ctrlr_add_qpair_and_send_rsp(struct spdk_nvmf_qpair *qpair,
				     DUPLICATE_QID_RETRY_US);
			qpair->connect_req = req;
			/* Set qpair->ctrlr here so that we'll have it when the poller expires. */
			qpair->ctrlr = ctrlr;
			nvmf_qpair_set_ctrlr(qpair, ctrlr);
			req->poller = SPDK_POLLER_REGISTER(_retry_qid_check, qpair,
							   DUPLICATE_QID_RETRY_US);
		}
		return;
	}

	qpair->ctrlr = ctrlr;
	nvmf_qpair_set_ctrlr(qpair, ctrlr);
	spdk_bit_array_set(ctrlr->qpair_mask, qpair->qid);

	rsp->status.sc = SPDK_NVME_SC_SUCCESS;
@@ -536,7 +548,7 @@ nvmf_ctrlr_create(struct spdk_nvmf_subsystem *subsystem,
		}
	}

	req->qpair->ctrlr = ctrlr;
	nvmf_qpair_set_ctrlr(req->qpair, ctrlr);
	spdk_thread_send_msg(subsystem->thread, _nvmf_subsystem_add_ctrlr, req);

	return ctrlr;