|
Zephyr API Documentation
2.7.0-rc2
A Scalable Open Source RTOS
|
#include <zephyr.h>#include <ztest.h>#include <syscall_handler.h>#include <kernel_internal.h>#include "test_syscall.h"#include <syscalls/stack_info_get_mrsh.c>#include <syscalls/check_perms_mrsh.c>Data Structures | |
| struct | foo |
| struct | scenario_data |
Macros | |
| #define | NUM_STACKS 3 |
| #define | STEST_STACKSIZE (512 + CONFIG_TEST_EXTRA_STACKSIZE) |
Functions | |
| K_THREAD_STACK_DEFINE (user_stack,(512+CONFIG_TEST_EXTRA_STACKSIZE)) | |
| K_THREAD_STACK_ARRAY_DEFINE (user_stack_array, 3,(512+CONFIG_TEST_EXTRA_STACKSIZE)) | |
| K_KERNEL_STACK_DEFINE (kern_stack,(512+CONFIG_TEST_EXTRA_STACKSIZE)) | |
| K_KERNEL_STACK_ARRAY_DEFINE (kern_stack_array, 3,(512+CONFIG_TEST_EXTRA_STACKSIZE)) | |
| void | stack_buffer_scenarios (void) |
| void | stest_thread_entry (void *p1, void *p2, void *p3) |
| void | stest_thread_launch (uint32_t flags, bool drop) |
| void | scenario_entry (void *stack_obj, size_t obj_size, size_t reported_size, size_t declared_size, bool is_array) |
| void | test_stack_buffer (void) |
| Test kernel provides user thread read/write access to its own stack memory buffer. More... | |
| void | no_op_entry (void *p1, void *p2, void *p3) |
| void | test_idle_stack (void) |
| Show that the idle thread stack size is correct. More... | |
| void | test_main (void) |
Variables | |
| struct k_thread | test_thread |
| __kstackmem struct foo | stest_member_stack |
| ZTEST_BMEM struct scenario_data | scenario_data |
| #define NUM_STACKS 3 |
| #define STEST_STACKSIZE (512 + CONFIG_TEST_EXTRA_STACKSIZE) |
| K_KERNEL_STACK_ARRAY_DEFINE | ( | kern_stack_array | , |
| 3 | , | ||
| (512+CONFIG_TEST_EXTRA_STACKSIZE) | |||
| ) |
| K_KERNEL_STACK_DEFINE | ( | kern_stack | , |
| (512+CONFIG_TEST_EXTRA_STACKSIZE) | |||
| ) |
| K_THREAD_STACK_ARRAY_DEFINE | ( | user_stack_array | , |
| 3 | , | ||
| (512+CONFIG_TEST_EXTRA_STACKSIZE) | |||
| ) |
| K_THREAD_STACK_DEFINE | ( | user_stack | , |
| (512+CONFIG_TEST_EXTRA_STACKSIZE) | |||
| ) |
| void scenario_entry | ( | void * | stack_obj, |
| size_t | obj_size, | ||
| size_t | reported_size, | ||
| size_t | declared_size, | ||
| bool | is_array | ||
| ) |
Show that the idle thread stack size is correct.
The idle thread has to occasionally clean up self-exiting threads. Exercise this and show that we didn't overflow, reporting out stack usage.
Test kernel provides user thread read/write access to its own stack memory buffer.
Thread can access its own stack memory buffer and perform read/write operations.
| ZTEST_BMEM struct scenario_data scenario_data |
| __kstackmem struct foo stest_member_stack |
| struct k_thread test_thread |