FreeRTOS-Kernel/portable/ARMv8M
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
..
non_secure armv8.1-m: Add task dedicated PAC key 2025-01-13 11:04:35 +00:00
secure Fix spelling typos (#1168) 2024-11-01 10:09:49 -07:00
copy_files.py Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
ReadMe.txt CI-CD Updates (#768) 2023-09-05 14:24:04 -07: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 and 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 and 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.