arch: arm: thread built-in stack guard implementation
This commit activates the built-in stack guard on the main_thread before jumping to it upon system initialization. Stack guard is activated if BUILTIN_STACK_GUARD is enabled by the user. The commit also activates built-in thread stack guards at every context switch, if BUILTIN_STACK_GUARD enabled by the user. Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
This commit is contained in:
parent
91dc3bd0f9
commit
8d1b013f3c
4 changed files with 44 additions and 0 deletions
|
@ -175,6 +175,14 @@ _thread_irq_disabled:
|
|||
pop {r2, lr}
|
||||
#endif /* CONFIG_MPU_STACK_GUARD */
|
||||
|
||||
#ifdef CONFIG_BUILTIN_STACK_GUARD
|
||||
/* r2 contains k_thread */
|
||||
add r0, r2, #0
|
||||
push {r2, lr}
|
||||
blx configure_builtin_stack_guard
|
||||
pop {r2, lr}
|
||||
#endif /* CONFIG_BUILTIN_STACK_GUARD */
|
||||
|
||||
#ifdef CONFIG_USERSPACE
|
||||
/* restore mode */
|
||||
ldr r0, [r2, #_thread_offset_to_mode]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue