HW stack protection in ARMv8-M is implemented by default with the built-in stack guard mechanism. Therefore, by default all tests for ARMv8-M will use the built-in stack overflow mechanism (CONFIG_BUILTIN_STACK_GUARD is set in tests). However, we would like have some coverage on the MPU stack guard mechanism for ARMv8-M. The added test case manually disables BUILTIN_STACK_GUARD and enables the MPU_STACK_GUARD option, to provide that test coverage. Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no> |
||
|---|---|---|
| .. | ||
| src | ||
| CMakeLists.txt | ||
| prj_arm_fp_sharing.conf | ||
| prj_armv8m_mpu_stack_guard.conf | ||
| prj.conf | ||
| protection_no_userspace.conf | ||
| README | ||
| sentinel.conf | ||
| testcase.yaml | ||
This test case verifies that kernel fatal error handling works correctly. If a thread causes a CPU exception, and it is not in an ISR or "essential" thread, the thread gets aborted and the rest of the system executes normally.