nvme: don't enable adminq until we know discovery_ctrlr exists

Fixes issue #1029.

Signed-off-by: Jim Harris <james.r.harris@intel.com>
Change-Id: I489dfc853804b005d385b1c51815f0e7f342b39b

Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/473237
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Alexey Marchuk <alexeymar@mellanox.com>
Reviewed-by: Seth Howell <seth.howell@intel.com>
Reviewed-by: yidong0635 <dongx.yi@intel.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
This commit is contained in:
Jim Harris 2019-11-04 05:37:33 -07:00 committed by Tomasz Zawadzki
parent ff93f0f9d6
commit e0a0f90b0f

View File

@ -240,10 +240,10 @@ nvme_fabric_ctrlr_scan(struct spdk_nvme_probe_ctx *probe_ctx,
discovery_opts.keep_alive_timeout_ms = 0;
discovery_ctrlr = nvme_transport_ctrlr_construct(&probe_ctx->trid, &discovery_opts, NULL);
nvme_qpair_set_state(discovery_ctrlr->adminq, NVME_QPAIR_ENABLED);
if (discovery_ctrlr == NULL) {
return -1;
}
nvme_qpair_set_state(discovery_ctrlr->adminq, NVME_QPAIR_ENABLED);
/* TODO: this should be using the normal NVMe controller initialization process +1 */
cc.raw = 0;