Clean-up AVR stack colorization logic
This commit is contained in:
parent
82c9694c5b
commit
c41976f23c
@ -32,6 +32,7 @@ endchoice
|
|||||||
config ARCH_FAMILY_AVR
|
config ARCH_FAMILY_AVR
|
||||||
bool
|
bool
|
||||||
default n
|
default n
|
||||||
|
select ARCH_HAVE_STACKCHECK
|
||||||
|
|
||||||
config ARCH_FAMILY_AVR32
|
config ARCH_FAMILY_AVR32
|
||||||
bool
|
bool
|
||||||
|
@ -170,7 +170,7 @@ int up_create_stack(FAR struct tcb_s *tcb, size_t stack_size, uint8_t ttype)
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#if defined(CONFIG_DEBUG) && defined(CONFIG_DEBUG_STACK)
|
#if defined(CONFIG_DEBUG) && defined(CONFIG_DEBUG_STACK)
|
||||||
memset(tcb->stack_alloc_ptr, 0xaa, stack_size);
|
memset(tcb->stack_alloc_ptr, STACK_COLOR, stack_size);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* The AVR uses a push-down stack: the stack grows toward lower
|
/* The AVR uses a push-down stack: the stack grows toward lower
|
||||||
|
@ -112,7 +112,7 @@ int up_use_stack(struct tcb_s *tcb, void *stack, size_t stack_size)
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#if defined(CONFIG_DEBUG) && defined(CONFIG_DEBUG_STACK)
|
#if defined(CONFIG_DEBUG) && defined(CONFIG_DEBUG_STACK)
|
||||||
memset(tcb->stack_alloc_ptr, 0xaa, stack_size);
|
memset(tcb->stack_alloc_ptr, STACK_COLOR, stack_size);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* The AVR uses a push-down stack: the stack grows toward loweraddresses in
|
/* The AVR uses a push-down stack: the stack grows toward loweraddresses in
|
||||||
|
@ -170,7 +170,7 @@ int up_create_stack(FAR struct tcb_s *tcb, size_t stack_size, uint8_t ttype)
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#if defined(CONFIG_DEBUG) && defined(CONFIG_DEBUG_STACK)
|
#if defined(CONFIG_DEBUG) && defined(CONFIG_DEBUG_STACK)
|
||||||
memset(tcb->stack_alloc_ptr, 0xaa, stack_size);
|
memset(tcb->stack_alloc_ptr, STACK_COLOR, stack_size);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* The AVR32 uses a push-down stack: the stack grows toward lower
|
/* The AVR32 uses a push-down stack: the stack grows toward lower
|
||||||
|
@ -107,6 +107,14 @@ int up_use_stack(struct tcb_s *tcb, void *stack, size_t stack_size)
|
|||||||
|
|
||||||
tcb->stack_alloc_ptr = stack;
|
tcb->stack_alloc_ptr = stack;
|
||||||
|
|
||||||
|
/* If stack debug is enabled, then fill the stack with a recognizable value
|
||||||
|
* that we can use later to test for high water marks.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if defined(CONFIG_DEBUG) && defined(CONFIG_DEBUG_STACK)
|
||||||
|
memset(tcb->stack_alloc_ptr, STACK_COLOR, stack_size);
|
||||||
|
#endif
|
||||||
|
|
||||||
/* The AVR32 uses a push-down stack: the stack grows
|
/* The AVR32 uses a push-down stack: the stack grows
|
||||||
* toward loweraddresses in memory. The stack pointer
|
* toward loweraddresses in memory. The stack pointer
|
||||||
* register, points to the lowest, valid work address
|
* register, points to the lowest, valid work address
|
||||||
|
@ -73,6 +73,14 @@
|
|||||||
# define CONFIG_ARCH_INTERRUPTSTACK 0
|
# define CONFIG_ARCH_INTERRUPTSTACK 0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* This is the value used to mark the stack for subsequent stack monitoring
|
||||||
|
* logic.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define STACK_COLOR 's'
|
||||||
|
#define INTSTACK_COLOR 's'
|
||||||
|
#define HEAP_COLOR 'h'
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Public Types
|
* Public Types
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
Loading…
Reference in New Issue
Block a user