From 739d54136219ead4d9f02f7985fad8ae026f216d Mon Sep 17 00:00:00 2001 From: Tomasz Zawadzki Date: Tue, 2 Mar 2021 05:33:51 -0500 Subject: [PATCH] lib/bdev: move to spdk_bdev_open_ext() spdk_bdev_open() is deprecated, so this patch moves remaining instances to spdk_bdev_open_ext(). Signed-off-by: Tomasz Zawadzki Change-Id: I7e8648efbf166665bf1c3700a11a6dc81fd051c3 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/6625 Community-CI: Broadcom CI Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins Reviewed-by: Aleksey Marchuk Reviewed-by: Reviewed-by: Ben Walker --- module/bdev/nvme/bdev_nvme_rpc.c | 7 ++++++- test/bdev/bdevio/bdevio.c | 9 ++++++++- test/bdev/bdevperf/bdevperf.c | 11 +++++++---- test/unit/lib/bdev/bdev.c/bdev_ut.c | 12 ++---------- 4 files changed, 23 insertions(+), 16 deletions(-) diff --git a/module/bdev/nvme/bdev_nvme_rpc.c b/module/bdev/nvme/bdev_nvme_rpc.c index 84d2a29ff..5f7778564 100644 --- a/module/bdev/nvme/bdev_nvme_rpc.c +++ b/module/bdev/nvme/bdev_nvme_rpc.c @@ -773,6 +773,11 @@ apply_firmware_complete(struct spdk_bdev_io *bdev_io, bool success, void *cb_arg } } +static void +apply_firmware_open_cb(enum spdk_bdev_event_type type, struct spdk_bdev *bdev, void *event_ctx) +{ +} + static void rpc_bdev_nvme_apply_firmware(struct spdk_jsonrpc_request *request, const struct spdk_json_val *params) @@ -834,7 +839,7 @@ rpc_bdev_nvme_apply_firmware(struct spdk_jsonrpc_request *request, goto err; } - if (spdk_bdev_open(bdev2, true, NULL, NULL, &desc) != 0) { + if (spdk_bdev_open_ext(spdk_bdev_get_name(bdev2), true, apply_firmware_open_cb, NULL, &desc) != 0) { snprintf(msg, sizeof(msg), "Device %s is in use.", firm_ctx->req->bdev_name); free(opt); goto err; diff --git a/test/bdev/bdevio/bdevio.c b/test/bdev/bdevio/bdevio.c index d0dff42d4..d46aa5bb9 100644 --- a/test/bdev/bdevio/bdevio.c +++ b/test/bdev/bdevio/bdevio.c @@ -109,6 +109,12 @@ __get_io_channel(void *arg) wake_ut_thread(); } +static void +bdevio_construct_target_open_cb(enum spdk_bdev_event_type type, struct spdk_bdev *bdev, + void *event_ctx) +{ +} + static int bdevio_construct_target(struct spdk_bdev *bdev) { @@ -122,7 +128,8 @@ bdevio_construct_target(struct spdk_bdev *bdev) return -ENOMEM; } - rc = spdk_bdev_open(bdev, true, NULL, NULL, &target->bdev_desc); + rc = spdk_bdev_open_ext(spdk_bdev_get_name(bdev), true, bdevio_construct_target_open_cb, NULL, + &target->bdev_desc); if (rc != 0) { free(target); SPDK_ERRLOG("Could not open leaf bdev %s, error=%d\n", spdk_bdev_get_name(bdev), rc); diff --git a/test/bdev/bdevperf/bdevperf.c b/test/bdev/bdevperf/bdevperf.c index e2aab8a41..9515f2b7a 100644 --- a/test/bdev/bdevperf/bdevperf.c +++ b/test/bdev/bdevperf/bdevperf.c @@ -1086,11 +1086,13 @@ bdevperf_test(void) } static void -bdevperf_bdev_removed(void *arg) +bdevperf_bdev_removed(enum spdk_bdev_event_type type, struct spdk_bdev *bdev, void *event_ctx) { - struct bdevperf_job *job = arg; + struct bdevperf_job *job = event_ctx; - bdevperf_job_drain(job); + if (SPDK_BDEV_EVENT_REMOVE == type) { + bdevperf_job_drain(job); + } } static uint32_t g_construct_job_count = 0; @@ -1162,7 +1164,8 @@ _bdevperf_construct_job(void *ctx) struct bdevperf_job *job = ctx; int rc; - rc = spdk_bdev_open(job->bdev, true, bdevperf_bdev_removed, job, &job->bdev_desc); + rc = spdk_bdev_open_ext(spdk_bdev_get_name(job->bdev), true, bdevperf_bdev_removed, job, + &job->bdev_desc); if (rc != 0) { SPDK_ERRLOG("Could not open leaf bdev %s, error=%d\n", spdk_bdev_get_name(job->bdev), rc); g_run_rc = -EINVAL; diff --git a/test/unit/lib/bdev/bdev.c/bdev_ut.c b/test/unit/lib/bdev/bdev.c/bdev_ut.c index db1d60b7d..b5db551f0 100644 --- a/test/unit/lib/bdev/bdev.c/bdev_ut.c +++ b/test/unit/lib/bdev/bdev.c/bdev_ut.c @@ -689,7 +689,6 @@ num_blocks_test(void) { struct spdk_bdev bdev; struct spdk_bdev_desc *desc = NULL; - struct spdk_bdev_desc *desc_ext = NULL; int rc; memset(&bdev, 0, sizeof(bdev)); @@ -704,22 +703,16 @@ num_blocks_test(void) /* Shrinking block number */ CU_ASSERT(spdk_bdev_notify_blockcnt_change(&bdev, 30) == 0); - /* In case bdev opened */ - rc = spdk_bdev_open(&bdev, false, NULL, NULL, &desc); + rc = spdk_bdev_open_ext("num_blocks", false, bdev_open_cb1, &desc, &desc); CU_ASSERT(rc == 0); SPDK_CU_ASSERT_FATAL(desc != NULL); + CU_ASSERT(&bdev == spdk_bdev_desc_get_bdev(desc)); /* Growing block number */ CU_ASSERT(spdk_bdev_notify_blockcnt_change(&bdev, 80) == 0); /* Shrinking block number */ CU_ASSERT(spdk_bdev_notify_blockcnt_change(&bdev, 20) != 0); - /* In case bdev opened with ext API */ - rc = spdk_bdev_open_ext("num_blocks", false, bdev_open_cb1, &desc_ext, &desc_ext); - CU_ASSERT(rc == 0); - SPDK_CU_ASSERT_FATAL(desc_ext != NULL); - CU_ASSERT(&bdev == spdk_bdev_desc_get_bdev(desc_ext)); - g_event_type1 = 0xFF; /* Growing block number */ CU_ASSERT(spdk_bdev_notify_blockcnt_change(&bdev, 90) == 0); @@ -732,7 +725,6 @@ num_blocks_test(void) CU_ASSERT(spdk_bdev_notify_blockcnt_change(&bdev, 100) == 0); spdk_bdev_close(desc); - spdk_bdev_close(desc_ext); spdk_bdev_unregister(&bdev, NULL, NULL); poll_threads();