test: Use ut_multithread framework in lvol unit test

Change-Id: I618c0ee6034cc082a7370e19d91b3f90ac3b589d
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-on: https://review.gerrithub.io/422468
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Chandler-Test-Pool: SPDK Automated Test System <sys_sgsw@intel.com>
This commit is contained in:
Ben Walker 2018-08-15 14:02:38 -07:00 committed by Jim Harris
parent 8caf6b6469
commit 36adf2d68c

View File

@ -36,7 +36,7 @@
#include "spdk/thread.h"
#include "spdk/util.h"
#include "common/lib/test_env.c"
#include "common/lib/ut_multithread.c"
#include "lvol/lvol.c"
@ -458,12 +458,6 @@ spdk_bs_create_clone(struct spdk_blob_store *bs, spdk_blob_id blobid,
spdk_bs_create_blob_ext(bs, NULL, cb_fn, cb_arg);
}
static void
_lvol_send_msg(spdk_msg_fn fn, void *ctx, void *thread_ctx)
{
fn(ctx);
}
static void
lvol_store_op_with_handle_complete(void *cb_arg, struct spdk_lvol_store *lvol_store, int lvserrno)
{
@ -511,7 +505,6 @@ lvs_init_unload_success(void)
init_dev(&dev);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
spdk_lvs_opts_init(&opts);
snprintf(opts.name, sizeof(opts.name), "lvs");
@ -548,8 +541,6 @@ lvs_init_unload_success(void)
CU_ASSERT(TAILQ_EMPTY(&g_lvol_stores));
free_dev(&dev);
spdk_free_thread();
}
static void
@ -561,7 +552,6 @@ lvs_init_destroy_success(void)
init_dev(&dev);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
spdk_lvs_opts_init(&opts);
snprintf(opts.name, sizeof(opts.name), "lvs");
@ -593,8 +583,6 @@ lvs_init_destroy_success(void)
CU_ASSERT(rc == 0);
CU_ASSERT(g_lvserrno == 0);
g_lvol_store = NULL;
spdk_free_thread();
}
static void
@ -606,8 +594,6 @@ lvs_init_opts_success(void)
init_dev(&dev);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
g_lvserrno = -1;
spdk_lvs_opts_init(&opts);
@ -626,8 +612,6 @@ lvs_init_opts_success(void)
g_lvol_store = NULL;
free_dev(&dev);
spdk_free_thread();
}
static void
@ -635,14 +619,10 @@ lvs_unload_lvs_is_null_fail(void)
{
int rc = 0;
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
g_lvserrno = -1;
rc = spdk_lvs_unload(NULL, lvol_store_op_complete, NULL);
CU_ASSERT(rc == -ENODEV);
CU_ASSERT(g_lvserrno == -1);
spdk_free_thread();
}
static void
@ -657,8 +637,6 @@ lvs_names(void)
init_dev(&dev_y);
init_dev(&dev_x2);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
spdk_lvs_opts_init(&opts_none);
spdk_lvs_opts_init(&opts_x);
opts_x.name[0] = 'x';
@ -750,8 +728,6 @@ lvs_names(void)
rc = spdk_lvs_destroy(lvs_y, lvol_store_op_complete, NULL);
CU_ASSERT(rc == 0);
CU_ASSERT(g_lvserrno == 0);
spdk_free_thread();
}
static void
@ -763,8 +739,6 @@ lvol_create_destroy_success(void)
init_dev(&dev);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
spdk_lvs_opts_init(&opts);
snprintf(opts.name, sizeof(opts.name), "lvs");
@ -790,8 +764,6 @@ lvol_create_destroy_success(void)
g_lvol_store = NULL;
free_dev(&dev);
spdk_free_thread();
}
static void
@ -803,8 +775,6 @@ lvol_create_fail(void)
init_dev(&dev);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
spdk_lvs_opts_init(&opts);
snprintf(opts.name, sizeof(opts.name), "lvs");
@ -837,8 +807,6 @@ lvol_create_fail(void)
g_lvol_store = NULL;
free_dev(&dev);
spdk_free_thread();
}
static void
@ -850,8 +818,6 @@ lvol_destroy_fail(void)
init_dev(&dev);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
spdk_lvs_opts_init(&opts);
snprintf(opts.name, sizeof(opts.name), "lvs");
@ -876,8 +842,6 @@ lvol_destroy_fail(void)
g_lvol_store = NULL;
free_dev(&dev);
spdk_free_thread();
}
static void
@ -889,8 +853,6 @@ lvol_close_fail(void)
init_dev(&dev);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
spdk_lvs_opts_init(&opts);
snprintf(opts.name, sizeof(opts.name), "lvs");
@ -913,8 +875,6 @@ lvol_close_fail(void)
g_lvol_store = NULL;
free_dev(&dev);
spdk_free_thread();
}
static void
@ -926,8 +886,6 @@ lvol_close_success(void)
init_dev(&dev);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
spdk_lvs_opts_init(&opts);
snprintf(opts.name, sizeof(opts.name), "lvs");
@ -951,8 +909,6 @@ lvol_close_success(void)
g_lvol_store = NULL;
free_dev(&dev);
spdk_free_thread();
}
static void
@ -964,8 +920,6 @@ lvol_resize(void)
init_dev(&dev);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
spdk_lvs_opts_init(&opts);
snprintf(opts.name, sizeof(opts.name), "lvs");
@ -1021,8 +975,6 @@ lvol_resize(void)
g_lvol_store = NULL;
free_dev(&dev);
spdk_free_thread();
}
static void
@ -1048,8 +1000,6 @@ lvs_load(void)
snprintf(bs_opts.bstype.bstype, sizeof(bs_opts.bstype.bstype), "LVOLSTORE");
spdk_bs_init(&dev.bs_dev, &bs_opts, null_cb, NULL);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
/* Fail on bs load */
dev.load_status = -1;
CU_ASSERT(TAILQ_EMPTY(&g_lvol_stores));
@ -1120,8 +1070,6 @@ lvs_load(void)
free(req);
free_dev(&dev);
spdk_free_thread();
}
static void
@ -1173,8 +1121,6 @@ lvols_load(void)
spdk_blob_set_xattr(blob3, "name", "lvol3", strnlen("lvol3", SPDK_LVOL_NAME_MAX) + 1);
blob3->uuid[SPDK_UUID_STRING_LEN - 2] = '3';
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
/* Load lvs with 0 blobs */
g_lvserrno = 0;
spdk_lvs_load(&dev.bs_dev, lvol_store_op_with_handle_complete, req);
@ -1231,8 +1177,6 @@ lvols_load(void)
free(req);
free_dev(&dev);
spdk_free_thread();
}
static void
@ -1284,8 +1228,6 @@ lvol_open(void)
spdk_blob_set_xattr(blob3, "name", "lvol3", strnlen("lvol3", SPDK_LVOL_NAME_MAX) + 1);
blob3->uuid[SPDK_UUID_STRING_LEN - 2] = '3';
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
TAILQ_INSERT_TAIL(&dev.bs->blobs, blob1, link);
TAILQ_INSERT_TAIL(&dev.bs->blobs, blob2, link);
TAILQ_INSERT_TAIL(&dev.bs->blobs, blob3, link);
@ -1331,8 +1273,6 @@ lvol_open(void)
free(blob1);
free(blob2);
free(blob3);
spdk_free_thread();
}
static void
@ -1345,8 +1285,6 @@ lvol_snapshot(void)
init_dev(&dev);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
spdk_lvs_opts_init(&opts);
snprintf(opts.name, sizeof(opts.name), "lvs");
@ -1382,8 +1320,6 @@ lvol_snapshot(void)
g_lvol_store = NULL;
free_dev(&dev);
spdk_free_thread();
}
static void
@ -1396,8 +1332,6 @@ lvol_snapshot_fail(void)
init_dev(&dev);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
spdk_lvs_opts_init(&opts);
snprintf(opts.name, sizeof(opts.name), "lvs");
@ -1449,8 +1383,6 @@ lvol_snapshot_fail(void)
g_lvol_store = NULL;
free_dev(&dev);
spdk_free_thread();
}
static void
@ -1464,8 +1396,6 @@ lvol_clone(void)
init_dev(&dev);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
spdk_lvs_opts_init(&opts);
snprintf(opts.name, sizeof(opts.name), "lvs");
@ -1512,8 +1442,6 @@ lvol_clone(void)
g_lvol_store = NULL;
free_dev(&dev);
spdk_free_thread();
}
static void
@ -1528,8 +1456,6 @@ lvol_clone_fail(void)
init_dev(&dev);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
spdk_lvs_opts_init(&opts);
snprintf(opts.name, sizeof(opts.name), "lvs");
@ -1590,8 +1516,6 @@ lvol_clone_fail(void)
g_lvol_store = NULL;
free_dev(&dev);
spdk_free_thread();
}
static void
@ -1606,8 +1530,6 @@ lvol_names(void)
init_dev(&dev);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
spdk_lvs_opts_init(&opts);
snprintf(opts.name, sizeof(opts.name), "lvs");
@ -1689,8 +1611,6 @@ lvol_names(void)
CU_ASSERT(rc == 0);
CU_ASSERT(g_lvserrno == 0);
g_lvol_store = NULL;
spdk_free_thread();
}
static void
@ -1704,8 +1624,6 @@ lvol_rename(void)
init_dev(&dev);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
spdk_lvs_opts_init(&opts);
snprintf(opts.name, sizeof(opts.name), "lvs");
@ -1762,8 +1680,6 @@ lvol_rename(void)
CU_ASSERT(rc == 0);
CU_ASSERT(g_lvserrno == 0);
g_lvol_store = NULL;
spdk_free_thread();
}
static void
@ -1776,8 +1692,6 @@ lvs_rename(void)
init_dev(&dev);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
spdk_lvs_opts_init(&opts);
snprintf(opts.name, sizeof(opts.name), "lvs");
g_lvserrno = -1;
@ -1844,8 +1758,6 @@ lvs_rename(void)
CU_ASSERT(rc == 0);
CU_ASSERT(g_lvserrno == 0);
g_lvol_store = NULL;
spdk_free_thread();
}
static void lvol_refcnt(void)
{
@ -1856,7 +1768,6 @@ static void lvol_refcnt(void)
init_dev(&dev);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
spdk_lvs_opts_init(&opts);
snprintf(opts.name, sizeof(opts.name), "lvs");
@ -1906,8 +1817,6 @@ static void lvol_refcnt(void)
g_lvol_store = NULL;
free_dev(&dev);
spdk_free_thread();
}
static void
@ -1919,8 +1828,6 @@ lvol_create_thin_provisioned(void)
init_dev(&dev);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
spdk_lvs_opts_init(&opts);
snprintf(opts.name, sizeof(opts.name), "lvs");
@ -1959,8 +1866,6 @@ lvol_create_thin_provisioned(void)
g_lvol_store = NULL;
free_dev(&dev);
spdk_free_thread();
}
static void
@ -1972,8 +1877,6 @@ lvol_inflate(void)
init_dev(&dev);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
spdk_lvs_opts_init(&opts);
snprintf(opts.name, sizeof(opts.name), "lvs");
@ -2012,8 +1915,6 @@ lvol_inflate(void)
* inflate call
*/
CU_ASSERT(g_io_channel == NULL);
spdk_free_thread();
}
static void
@ -2025,8 +1926,6 @@ lvol_decouple_parent(void)
init_dev(&dev);
spdk_allocate_thread(_lvol_send_msg, NULL, NULL, NULL, NULL);
spdk_lvs_opts_init(&opts);
snprintf(opts.name, sizeof(opts.name), "lvs");
@ -2065,8 +1964,6 @@ lvol_decouple_parent(void)
* inflate call
*/
CU_ASSERT(g_io_channel == NULL);
spdk_free_thread();
}
int main(int argc, char **argv)
@ -2118,10 +2015,15 @@ int main(int argc, char **argv)
return CU_get_error();
}
allocate_threads(1);
set_thread(0);
CU_basic_set_mode(CU_BRM_VERBOSE);
CU_basic_run_tests();
num_failures = CU_get_number_of_failures();
CU_cleanup_registry();
free_threads();
return num_failures;
}