Commit 36adf2d6 authored by Ben Walker's avatar Ben Walker Committed by Jim Harris
Browse files

test: Use ut_multithread framework in lvol unit test



Change-Id: I618c0ee6034cc082a7370e19d91b3f90ac3b589d
Signed-off-by: default avatarBen Walker <benjamin.walker@intel.com>
Reviewed-on: https://review.gerrithub.io/422468


Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarShuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Reviewed-by: default avatarChangpeng Liu <changpeng.liu@intel.com>
Reviewed-by: default avatarJim Harris <james.r.harris@intel.com>
Chandler-Test-Pool: SPDK Automated Test System <sys_sgsw@intel.com>
parent 8caf6b64
Loading
Loading
Loading
Loading
+6 −104
Original line number Diff line number Diff line
@@ -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;
}