From a1b9707ceba5b2d5772fe4dacd413b4e9429eda6 Mon Sep 17 00:00:00 2001 From: Maciej Szwed Date: Thu, 12 Sep 2019 12:30:00 +0200 Subject: [PATCH] bdev/nvme: Call bdev_nvme_create_bdevs only for non-OCSSD NVMe OCSSD NVMe will use separate RPC call to create bdevs so don't call bdev_nvme_create_bdevs for it. Additionally change bdev_nvme_create_bdevs arguments to take nvme_async_probe_ctx structure to simplify future changes. Signed-off-by: Maciej Szwed Change-Id: I07ad8034058d8b3a0c78627db1fd0ba3db5a211b Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/468223 Tested-by: SPDK CI Jenkins Reviewed-by: Jim Harris Reviewed-by: Ben Walker --- module/bdev/nvme/bdev_nvme.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/module/bdev/nvme/bdev_nvme.c b/module/bdev/nvme/bdev_nvme.c index de8738f6e..40baf51bf 100644 --- a/module/bdev/nvme/bdev_nvme.c +++ b/module/bdev/nvme/bdev_nvme.c @@ -1245,9 +1245,11 @@ connect_attach_cb(void *cb_ctx, const struct spdk_nvme_transport_id *trid, goto end; } - rc = bdev_nvme_create_bdevs(ctx); - if (rc) { - SPDK_ERRLOG("Failed to create bdevs\n"); + if (!spdk_nvme_ctrlr_is_ocssd_supported(ctrlr)) { + rc = bdev_nvme_create_bdevs(ctx); + if (rc) { + SPDK_ERRLOG("Failed to create bdevs\n"); + } } end: