From 95896bf17cc0441f2c06d8b2394928df2a24f6a5 Mon Sep 17 00:00:00 2001 From: Chris Friedt Date: Sun, 8 Dec 2024 07:24:24 -0500 Subject: [PATCH] kernel: dynamic: simplify dynamic stack allocation Merge the functions z_thread_stack_alloc_dyn() and stack_alloc_dyn(), simplifying the flow for dynamic thread stack allocation. Signed-off-by: Chris Friedt --- kernel/dynamic.c | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/kernel/dynamic.c b/kernel/dynamic.c index a17a84f724a..a03216b00f0 100644 --- a/kernel/dynamic.c +++ b/kernel/dynamic.c @@ -31,11 +31,6 @@ static K_THREAD_STACK_ARRAY_DEFINE(dynamic_stack, CONFIG_DYNAMIC_THREAD_POOL_SIZ CONFIG_DYNAMIC_THREAD_STACK_SIZE); SYS_BITARRAY_DEFINE_STATIC(dynamic_ba, BA_SIZE); -static k_thread_stack_t *z_thread_stack_alloc_dyn(size_t align, size_t size) -{ - return z_thread_aligned_alloc(align, size); -} - static k_thread_stack_t *z_thread_stack_alloc_pool(size_t size) { int rv; @@ -61,7 +56,7 @@ static k_thread_stack_t *z_thread_stack_alloc_pool(size_t size) return stack; } -static k_thread_stack_t *stack_alloc_dyn(size_t size, int flags) +static k_thread_stack_t *z_thread_stack_alloc_dyn(size_t size, int flags) { if ((flags & K_USER) == K_USER) { #ifdef CONFIG_DYNAMIC_OBJECTS @@ -74,8 +69,7 @@ static k_thread_stack_t *stack_alloc_dyn(size_t size, int flags) #endif /* CONFIG_DYNAMIC_OBJECTS */ } - return z_thread_stack_alloc_dyn(Z_KERNEL_STACK_OBJ_ALIGN, - K_KERNEL_STACK_LEN(size)); + return z_thread_aligned_alloc(Z_KERNEL_STACK_OBJ_ALIGN, K_KERNEL_STACK_LEN(size)); } k_thread_stack_t *z_impl_k_thread_stack_alloc(size_t size, int flags) @@ -83,7 +77,7 @@ k_thread_stack_t *z_impl_k_thread_stack_alloc(size_t size, int flags) k_thread_stack_t *stack = NULL; if (IS_ENABLED(CONFIG_DYNAMIC_THREAD_PREFER_ALLOC)) { - stack = stack_alloc_dyn(size, flags); + stack = z_thread_stack_alloc_dyn(size, flags); if (stack == NULL && CONFIG_DYNAMIC_THREAD_POOL_SIZE > 0) { stack = z_thread_stack_alloc_pool(size); } @@ -93,7 +87,7 @@ k_thread_stack_t *z_impl_k_thread_stack_alloc(size_t size, int flags) } if ((stack == NULL) && IS_ENABLED(CONFIG_DYNAMIC_THREAD_ALLOC)) { - stack = stack_alloc_dyn(size, flags); + stack = z_thread_stack_alloc_dyn(size, flags); } }