FreeRTOS-Kernel/portable/ARMv8M/non_secure
Ahmed Ismail 029545f4ad armv8.1-m: Add task dedicated PAC key
To harden the security, each task is assigned
a dedicated PAC key, so that attackers needs
to guess the all the tasks' PAC keys right to
exploit the system using Return Oriented Programming.

The kernel is now updated to support the following:
* A PAC key set with a random number generated and
is pushed onto the task's stack when a task is created.

* As part of scheduling, the task's PAC key is stacked/unstacked
to/from the task's stack when a task is unscheduled/scheduled
from/to run.

Signed-off-by: Ahmed Ismail <Ahmed.Ismail@arm.com>
2025-01-13 11:04:35 +00:00
..
portable armv8.1-m: Add task dedicated PAC key 2025-01-13 11:04:35 +00:00
port.c armv8.1-m: Add task dedicated PAC key 2025-01-13 11:04:35 +00:00
portasm.h Fix spelling typos (#1168) 2024-11-01 10:09:49 -07:00
portmacrocommon.h armv8.1-m: Add task dedicated PAC key 2025-01-13 11:04:35 +00:00
ReadMe.txt Normalize line endings and whitespace in source files 2022-11-29 15:38:47 -08:00

This directory tree contains the master copy of the FreeRTOS Armv8-M and
Armv8.1-M ports.
Do not use the files located here!  These file are copied into separate
FreeRTOS/Source/portable/[compiler]/ARM_CM[23|33|55|85]_NNN directories prior to
each FreeRTOS release.

If your Armv8-M/Armv8.1-M application uses TrustZone then use the files from the
FreeRTOS/Source/portable/[compiler]/ARM_CM[23|33|55|85] directories.

If your Armv8-M/Armv8.1-M application does not use TrustZone then use the files from
the FreeRTOS/Source/portable/[compiler]/ARM_CM[23|33|55|85]_NTZ directories.