mirror of
https://github.com/eclipse-threadx/threadx.git
synced 2025-11-16 04:24:48 +00:00
Add random number stack filling option. (#257)
Co-authored-by: TiejunZhou <50469179+TiejunMS@users.noreply.github.com>
This commit is contained in:
@@ -6,7 +6,7 @@ project(threadx_smp_test LANGUAGES C)
|
||||
|
||||
# Set build configurations
|
||||
set(BUILD_CONFIGURATIONS default_build_coverage
|
||||
disable_notify_callbacks_build stack_checking_build
|
||||
disable_notify_callbacks_build stack_checking_build stack_checking_rand_fill_build
|
||||
trace_build)
|
||||
set(CMAKE_CONFIGURATION_TYPES
|
||||
${BUILD_CONFIGURATIONS}
|
||||
@@ -26,6 +26,7 @@ message(STATUS "Using toolchain file: ${CMAKE_TOOLCHAIN_FILE}.")
|
||||
set(default_build_coverage "")
|
||||
set(disable_notify_callbacks_build -DTX_DISABLE_NOTIFY_CALLBACKS)
|
||||
set(stack_checking_build -DTX_ENABLE_STACK_CHECKING)
|
||||
set(stack_checking_rand_fill_build -DTX_ENABLE_STACK_CHECKING -DTX_ENABLE_RANDOM_NUMBER_STACK_FILLING)
|
||||
set(trace_build -DTX_ENABLE_EVENT_TRACE)
|
||||
|
||||
add_compile_options(
|
||||
|
||||
@@ -519,6 +519,9 @@ UINT status;
|
||||
ULONG flags;
|
||||
ULONG temp;
|
||||
UINT i, j;
|
||||
#if defined(TX_ENABLE_RANDOM_NUMBER_STACK_FILLING) && defined(TX_ENABLE_STACK_CHECKING)
|
||||
TX_THREAD *thread_ptr;
|
||||
#endif
|
||||
|
||||
|
||||
/* Initialize the test error/success counters. */
|
||||
@@ -1072,6 +1075,15 @@ UINT i, j;
|
||||
|
||||
/* Make a fake thread with a fake stack. */
|
||||
test_thread2.tx_thread_id = TX_THREAD_ID;
|
||||
#if defined(TX_ENABLE_RANDOM_NUMBER_STACK_FILLING) && defined(TX_ENABLE_STACK_CHECKING)
|
||||
|
||||
/* Set the thread pointer. */
|
||||
thread_ptr = &(test_thread2);
|
||||
|
||||
/* Initialize the stack fill value. */
|
||||
thread_ptr -> tx_thread_stack_fill_value = (0xFEFEFEFEUL);
|
||||
|
||||
#endif
|
||||
for (i = 0; i < (sizeof(test_thread2_stack)/sizeof(ULONG)); i++)
|
||||
{
|
||||
/* Set the fake thread stack to the fill pattern. */
|
||||
|
||||
@@ -6,7 +6,7 @@ project(threadx_test LANGUAGES C)
|
||||
|
||||
# Set build configurations
|
||||
set(BUILD_CONFIGURATIONS default_build_coverage disable_notify_callbacks_build
|
||||
stack_checking_build trace_build)
|
||||
stack_checking_build stack_checking_rand_fill_build trace_build)
|
||||
set(CMAKE_CONFIGURATION_TYPES
|
||||
${BUILD_CONFIGURATIONS}
|
||||
CACHE STRING "list of supported configuration types" FORCE)
|
||||
@@ -25,6 +25,7 @@ message(STATUS "Using toolchain file: ${CMAKE_TOOLCHAIN_FILE}.")
|
||||
set(default_build_coverage "")
|
||||
set(disable_notify_callbacks_build -DTX_DISABLE_NOTIFY_CALLBACKS)
|
||||
set(stack_checking_build -DTX_ENABLE_STACK_CHECKING)
|
||||
set(stack_checking_rand_fill_build -DTX_ENABLE_STACK_CHECKING -DTX_ENABLE_RANDOM_NUMBER_STACK_FILLING)
|
||||
set(trace_build -DTX_ENABLE_EVENT_TRACE)
|
||||
|
||||
add_compile_options(
|
||||
|
||||
@@ -477,6 +477,9 @@ UINT status;
|
||||
ULONG flags;
|
||||
ULONG temp;
|
||||
UINT i, j;
|
||||
#if defined(TX_ENABLE_RANDOM_NUMBER_STACK_FILLING) && defined(TX_ENABLE_STACK_CHECKING)
|
||||
TX_THREAD *thread_ptr;
|
||||
#endif
|
||||
|
||||
|
||||
/* Initialize the test error/success counters. */
|
||||
@@ -946,6 +949,15 @@ UINT i, j;
|
||||
|
||||
/* Make a fake thread with a fake stack. */
|
||||
test_thread2.tx_thread_id = TX_THREAD_ID;
|
||||
#if defined(TX_ENABLE_RANDOM_NUMBER_STACK_FILLING) && defined(TX_ENABLE_STACK_CHECKING)
|
||||
|
||||
/* Set the thread pointer. */
|
||||
thread_ptr = &(test_thread2);
|
||||
|
||||
/* Initialize the stack fill value. */
|
||||
thread_ptr -> tx_thread_stack_fill_value = (0xFEFEFEFEUL);
|
||||
|
||||
#endif
|
||||
for (i = 0; i < (sizeof(test_thread2_stack)/sizeof(ULONG)); i++)
|
||||
{
|
||||
/* Set the fake thread stack to the fill pattern. */
|
||||
|
||||
Reference in New Issue
Block a user