Commit 6129e78d authored by Changpeng Liu's avatar Changpeng Liu Committed by Ben Walker
Browse files

nvme: small code cleanup for nvme_transport_ctrlr_scan



The identify data is only valid if spdk_nvme_connect()
was used with Discovery Controller, so move this code
into the section where it belongs to.

Change-Id: I1897f38277eafc192552a09556a568e9152bb72d
Signed-off-by: default avatarChangpeng Liu <changpeng.liu@intel.com>
Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/448500


Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarJim Harris <james.r.harris@intel.com>
Reviewed-by: default avatarBen Walker <benjamin.walker@intel.com>
parent fc43fbba
Loading
Loading
Loading
Loading
+14 −14
Original line number Diff line number Diff line
@@ -1381,6 +1381,8 @@ nvme_rdma_ctrlr_scan(struct spdk_nvme_probe_ctx *probe_ctx,
		return -1;
	}

	/* Direct attach through spdk_nvme_connect() API */
	if (direct_connect == true) {
		/* get the cdata info */
		rc = nvme_ctrlr_cmd_identify(discovery_ctrlr, SPDK_NVME_IDENTIFY_CTRLR, 0, 0,
					     &discovery_ctrlr->cdata, sizeof(discovery_ctrlr->cdata),
@@ -1395,8 +1397,6 @@ nvme_rdma_ctrlr_scan(struct spdk_nvme_probe_ctx *probe_ctx,
			return -ENXIO;
		}

	/* Direct attach through spdk_nvme_connect() API */
	if (direct_connect == true) {
		/* Set the ready state to skip the normal init process */
		discovery_ctrlr->state = NVME_CTRLR_STATE_READY;
		nvme_ctrlr_connected(probe_ctx, discovery_ctrlr);
+14 −18
Original line number Diff line number Diff line
@@ -299,6 +299,8 @@ nvme_tcp_ctrlr_scan(struct spdk_nvme_probe_ctx *probe_ctx,
		return -1;
	}

	/* Direct attach through spdk_nvme_connect() API */
	if (direct_connect == true) {
		/* get the cdata info */
		status.done = false;
		rc = nvme_ctrlr_cmd_identify(discovery_ctrlr, SPDK_NVME_IDENTIFY_CTRLR, 0, 0,
@@ -309,16 +311,10 @@ nvme_tcp_ctrlr_scan(struct spdk_nvme_probe_ctx *probe_ctx,
			return rc;
		}

	while (status.done == false) {
		spdk_nvme_qpair_process_completions(discovery_ctrlr->adminq, 0);
	}
	if (spdk_nvme_cpl_is_error(&status.cpl)) {
		if (spdk_nvme_wait_for_completion(discovery_ctrlr->adminq, &status)) {
			SPDK_ERRLOG("nvme_identify_controller failed!\n");
			return -ENXIO;
		}

	/* Direct attach through spdk_nvme_connect() API */
	if (direct_connect == true) {
		/* Set the ready state to skip the normal init process */
		discovery_ctrlr->state = NVME_CTRLR_STATE_READY;
		nvme_ctrlr_connected(probe_ctx, discovery_ctrlr);