ut/bdev_mt: Use spdk_bdev_open_ext() instead of spdk_bdev_open()
Replace all spdk_bdev_open() calls by spdk_bdev_open_ext() calls in the multiple SPDK threads cases of the unit tests for lib/bdev.c. Signed-off-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Change-Id: I65591f12f8737bb8a0c1256fa84c5b6dac481150 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/4728 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com>
This commit is contained in:
parent
75dfecbb16
commit
6a684a349e
@ -270,6 +270,22 @@ bdev_init_cb(void *done, int rc)
|
|||||||
*(bool *)done = true;
|
*(bool *)done = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_bdev_event_cb(enum spdk_bdev_event_type type, struct spdk_bdev *bdev,
|
||||||
|
void *event_ctx)
|
||||||
|
{
|
||||||
|
switch (type) {
|
||||||
|
case SPDK_BDEV_EVENT_REMOVE:
|
||||||
|
if (event_ctx != NULL) {
|
||||||
|
*(bool *)event_ctx = true;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
CU_ASSERT(false);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
setup_test(void)
|
setup_test(void)
|
||||||
{
|
{
|
||||||
@ -282,7 +298,7 @@ setup_test(void)
|
|||||||
spdk_io_device_register(&g_io_device, stub_create_ch, stub_destroy_ch,
|
spdk_io_device_register(&g_io_device, stub_create_ch, stub_destroy_ch,
|
||||||
sizeof(struct ut_bdev_channel), NULL);
|
sizeof(struct ut_bdev_channel), NULL);
|
||||||
register_bdev(&g_bdev, "ut_bdev", &g_io_device);
|
register_bdev(&g_bdev, "ut_bdev", &g_io_device);
|
||||||
spdk_bdev_open(&g_bdev.bdev, true, NULL, NULL, &g_desc);
|
spdk_bdev_open_ext("ut_bdev", true, _bdev_event_cb, NULL, &g_desc);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -351,12 +367,6 @@ basic(void)
|
|||||||
CU_ASSERT(g_fini_start_called == true);
|
CU_ASSERT(g_fini_start_called == true);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
|
||||||
_bdev_removed(void *done)
|
|
||||||
{
|
|
||||||
*(bool *)done = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_bdev_unregistered(void *done, int rc)
|
_bdev_unregistered(void *done, int rc)
|
||||||
{
|
{
|
||||||
@ -380,8 +390,8 @@ unregister_and_close(void)
|
|||||||
poll_threads();
|
poll_threads();
|
||||||
|
|
||||||
/* Try hotremoving a bdev with descriptors which don't provide
|
/* Try hotremoving a bdev with descriptors which don't provide
|
||||||
* the notification callback */
|
* any context to the notification callback */
|
||||||
spdk_bdev_open(&g_bdev.bdev, true, NULL, NULL, &desc);
|
spdk_bdev_open_ext("ut_bdev", true, _bdev_event_cb, NULL, &desc);
|
||||||
SPDK_CU_ASSERT_FATAL(desc != NULL);
|
SPDK_CU_ASSERT_FATAL(desc != NULL);
|
||||||
|
|
||||||
/* There is an open descriptor on the device. Unregister it,
|
/* There is an open descriptor on the device. Unregister it,
|
||||||
@ -408,7 +418,7 @@ unregister_and_close(void)
|
|||||||
register_bdev(&g_bdev, "ut_bdev", &g_io_device);
|
register_bdev(&g_bdev, "ut_bdev", &g_io_device);
|
||||||
|
|
||||||
remove_notify = false;
|
remove_notify = false;
|
||||||
spdk_bdev_open(&g_bdev.bdev, true, _bdev_removed, &remove_notify, &desc);
|
spdk_bdev_open_ext("ut_bdev", true, _bdev_event_cb, &remove_notify, &desc);
|
||||||
SPDK_CU_ASSERT_FATAL(desc != NULL);
|
SPDK_CU_ASSERT_FATAL(desc != NULL);
|
||||||
CU_ASSERT(remove_notify == false);
|
CU_ASSERT(remove_notify == false);
|
||||||
|
|
||||||
@ -435,7 +445,7 @@ unregister_and_close(void)
|
|||||||
|
|
||||||
/* Restore the original g_bdev so that we can use teardown_test(). */
|
/* Restore the original g_bdev so that we can use teardown_test(). */
|
||||||
register_bdev(&g_bdev, "ut_bdev", &g_io_device);
|
register_bdev(&g_bdev, "ut_bdev", &g_io_device);
|
||||||
spdk_bdev_open(&g_bdev.bdev, true, NULL, NULL, &g_desc);
|
spdk_bdev_open_ext("ut_bdev", true, _bdev_event_cb, NULL, &g_desc);
|
||||||
teardown_test();
|
teardown_test();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -777,7 +787,7 @@ basic_qos(void)
|
|||||||
* Open the bdev again which shall setup the qos channel as the
|
* Open the bdev again which shall setup the qos channel as the
|
||||||
* channels are valid.
|
* channels are valid.
|
||||||
*/
|
*/
|
||||||
spdk_bdev_open(bdev, true, NULL, NULL, &g_desc);
|
spdk_bdev_open_ext("ut_bdev", true, _bdev_event_cb, NULL, &g_desc);
|
||||||
poll_threads();
|
poll_threads();
|
||||||
CU_ASSERT(bdev->internal.qos->ch != NULL);
|
CU_ASSERT(bdev->internal.qos->ch != NULL);
|
||||||
|
|
||||||
@ -795,7 +805,7 @@ basic_qos(void)
|
|||||||
CU_ASSERT(bdev->internal.qos->ch == NULL);
|
CU_ASSERT(bdev->internal.qos->ch == NULL);
|
||||||
|
|
||||||
/* Open the bdev again, no qos channel setup without valid channels. */
|
/* Open the bdev again, no qos channel setup without valid channels. */
|
||||||
spdk_bdev_open(bdev, true, NULL, NULL, &g_desc);
|
spdk_bdev_open_ext("ut_bdev", true, _bdev_event_cb, NULL, &g_desc);
|
||||||
poll_threads();
|
poll_threads();
|
||||||
CU_ASSERT(bdev->internal.qos->ch == NULL);
|
CU_ASSERT(bdev->internal.qos->ch == NULL);
|
||||||
|
|
||||||
@ -1139,7 +1149,7 @@ enomem_multi_bdev(void)
|
|||||||
second_bdev = calloc(1, sizeof(*second_bdev));
|
second_bdev = calloc(1, sizeof(*second_bdev));
|
||||||
SPDK_CU_ASSERT_FATAL(second_bdev != NULL);
|
SPDK_CU_ASSERT_FATAL(second_bdev != NULL);
|
||||||
register_bdev(second_bdev, "ut_bdev2", g_bdev.io_target);
|
register_bdev(second_bdev, "ut_bdev2", g_bdev.io_target);
|
||||||
spdk_bdev_open(&second_bdev->bdev, true, NULL, NULL, &second_desc);
|
spdk_bdev_open_ext("ut_bdev2", true, _bdev_event_cb, NULL, &second_desc);
|
||||||
SPDK_CU_ASSERT_FATAL(second_desc != NULL);
|
SPDK_CU_ASSERT_FATAL(second_desc != NULL);
|
||||||
|
|
||||||
set_thread(0);
|
set_thread(0);
|
||||||
@ -1215,7 +1225,7 @@ enomem_multi_io_target(void)
|
|||||||
second_bdev = calloc(1, sizeof(*second_bdev));
|
second_bdev = calloc(1, sizeof(*second_bdev));
|
||||||
SPDK_CU_ASSERT_FATAL(second_bdev != NULL);
|
SPDK_CU_ASSERT_FATAL(second_bdev != NULL);
|
||||||
register_bdev(second_bdev, "ut_bdev2", &new_io_device);
|
register_bdev(second_bdev, "ut_bdev2", &new_io_device);
|
||||||
spdk_bdev_open(&second_bdev->bdev, true, NULL, NULL, &second_desc);
|
spdk_bdev_open_ext("ut_bdev2", true, _bdev_event_cb, NULL, &second_desc);
|
||||||
SPDK_CU_ASSERT_FATAL(second_desc != NULL);
|
SPDK_CU_ASSERT_FATAL(second_desc != NULL);
|
||||||
|
|
||||||
set_thread(0);
|
set_thread(0);
|
||||||
|
Loading…
Reference in New Issue
Block a user