tests: kernel: mem_slab: Fix test for no multithreading
Modified test to exit early when multithreading is disabled to
fix linking errors.
Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
diff --git a/tests/kernel/mem_slab/mslab_api/src/test_mslab_api.c b/tests/kernel/mem_slab/mslab_api/src/test_mslab_api.c
index 521c9d5..3417932 100644
--- a/tests/kernel/mem_slab/mslab_api/src/test_mslab_api.c
+++ b/tests/kernel/mem_slab/mslab_api/src/test_mslab_api.c
@@ -133,11 +133,17 @@
K_SEM_DEFINE(SEM_HELPERDONE, 0, 1);
K_SEM_DEFINE(SEM_REGRESSDONE, 0, 1);
+static K_THREAD_STACK_DEFINE(stack, STACKSIZE);
+static struct k_thread HELPER;
-static void helper_thread(void)
+static void helper_thread(void *p0, void *p1, void *p2)
{
void *ptr[BLK_NUM]; /* Pointer to memory block */
+ ARG_UNUSED(p0);
+ ARG_UNUSED(p1);
+ ARG_UNUSED(p2);
+
(void)memset(ptr, 0, sizeof(ptr));
k_sem_take(&SEM_REGRESSDONE, K_FOREVER);
@@ -170,9 +176,6 @@
} /* helper thread */
-K_THREAD_DEFINE(HELPER, STACKSIZE, helper_thread, NULL, NULL, NULL,
- 7, 0, 0);
-
/*test cases*/
/**
* @brief Initialize the memory slab using k_mem_slab_init()
@@ -289,9 +292,18 @@
*/
void test_mslab_pending(void)
{
+ if (!IS_ENABLED(CONFIG_MULTITHREADING)) {
+ ztest_test_skip();
+ return;
+ }
+
int ret_value;
void *b; /* Pointer to memory block */
+ (void)k_thread_create(&HELPER, stack, STACKSIZE,
+ helper_thread, NULL, NULL, NULL,
+ 7, 0, K_NO_WAIT);
+
k_sem_give(&SEM_REGRESSDONE); /* Allow helper thread to run */
k_sem_take(&SEM_HELPERDONE, K_FOREVER); /* Wait for helper thread to finish */