CONFIG_ARM_STACK_PROTECTION¶
(No prompt – not directly user assignable.)
Type: bool
Help¶
This option enables either:
- The built-in Stack Pointer limit checking, or
- the MPU-based stack guard
to cause a system fatal error
if the bounds of the current process stack are overflowed.
The two stack guard options are mutually exclusive. The
selection of the built-in Stack Pointer limit checking is
prioritized over the MPU-based stack guard. The developer
still has the option to manually select the MPU-based
stack guard, if this is desired.
Default¶
- y if - HW_STACK_PROTECTION
Symbols selected by this symbol¶
Symbols implied by this symbol¶
Kconfig definition¶
At <Zephyr Architecture>/arm/core/aarch32/Kconfig:163
Included via Kconfig:8 → Kconfig.zephyr:39 → <Zephyr Architecture>/Kconfig:12 → <Zephyr Architecture>/arm/Kconfig:57
Menu path: (Top) → ARM Options
config ARM_STACK_PROTECTION
    bool
    default y if HW_STACK_PROTECTION
    select MPU_STACK_GUARD if !BUILTIN_STACK_GUARD && ARM_MPU
    imply BUILTIN_STACK_GUARD if CPU_CORTEX_M_HAS_SPLIM
    depends on ARM
    help
      This option enables either:
      - The built-in Stack Pointer limit checking, or
      - the MPU-based stack guard
      to cause a system fatal error
      if the bounds of the current process stack are overflowed.
      The two stack guard options are mutually exclusive. The
      selection of the built-in Stack Pointer limit checking is
      prioritized over the MPU-based stack guard. The developer
      still has the option to manually select the MPU-based
      stack guard, if this is desired.
(The ‘depends on’ condition includes propagated dependencies from ifs and menus.)