diff --git a/lib/nvme/nvme.c b/lib/nvme/nvme.c index a141d287b..123dc8a4c 100644 --- a/lib/nvme/nvme.c +++ b/lib/nvme/nvme.c @@ -342,16 +342,14 @@ nvme_ctrlr_probe(const struct spdk_nvme_transport_id *trid, void *devhandle, struct spdk_nvme_ctrlr *ctrlr; struct spdk_nvme_ctrlr_opts opts; + assert(trid != NULL); + spdk_nvme_ctrlr_get_default_ctrlr_opts(&opts, sizeof(opts)); if (!probe_cb || probe_cb(cb_ctx, trid, &opts)) { ctrlr = nvme_transport_ctrlr_construct(trid, &opts, devhandle); if (ctrlr == NULL) { - if (trid != NULL) { - SPDK_ERRLOG("Failed to construct NVMe controller for SSD: %s\n", trid->traddr); - } else { - SPDK_ERRLOG("Failed to construct NVMe controller\n"); - } + SPDK_ERRLOG("Failed to construct NVMe controller for SSD: %s\n", trid->traddr); return -1; } diff --git a/test/unit/lib/nvme/nvme.c/nvme_ut.c b/test/unit/lib/nvme/nvme.c/nvme_ut.c index 27b683b67..bfc7b5057 100644 --- a/test/unit/lib/nvme/nvme.c/nvme_ut.c +++ b/test/unit/lib/nvme/nvme.c/nvme_ut.c @@ -730,21 +730,21 @@ static void test_nvme_ctrlr_probe(void) { int rc = 0; - const struct spdk_nvme_transport_id *trid = NULL; + const struct spdk_nvme_transport_id trid = {}; void *devhandle = NULL; void *cb_ctx = NULL; struct spdk_nvme_ctrlr *dummy = NULL; /* test when probe_cb returns false */ MOCK_SET(dummy_probe_cb, bool, false); - rc = nvme_ctrlr_probe(trid, devhandle, dummy_probe_cb, cb_ctx); + rc = nvme_ctrlr_probe(&trid, devhandle, dummy_probe_cb, cb_ctx); CU_ASSERT(rc == 1); /* probe_cb returns true but we can't construct a ctrl */ MOCK_SET(dummy_probe_cb, bool, true); MOCK_SET_P(nvme_transport_ctrlr_construct, struct spdk_nvme_ctrlr *, NULL); - rc = nvme_ctrlr_probe(trid, devhandle, dummy_probe_cb, cb_ctx); + rc = nvme_ctrlr_probe(&trid, devhandle, dummy_probe_cb, cb_ctx); CU_ASSERT(rc == -1); /* happy path */ @@ -754,7 +754,7 @@ test_nvme_ctrlr_probe(void) MOCK_SET_P(nvme_transport_ctrlr_construct, struct spdk_nvme_ctrlr *, &ut_nvme_transport_ctrlr_construct); TAILQ_INIT(&g_nvme_init_ctrlrs); - rc = nvme_ctrlr_probe(trid, devhandle, dummy_probe_cb, cb_ctx); + rc = nvme_ctrlr_probe(&trid, devhandle, dummy_probe_cb, cb_ctx); CU_ASSERT(rc == 0); dummy = TAILQ_FIRST(&g_nvme_init_ctrlrs); CU_ASSERT(dummy == &ut_nvme_transport_ctrlr_construct);