FreeRTOS-Kernel/include
Ahmed Ismail 78e0cc778a
ARMv8.1-M: Add task dedicated PAC key support (#1195)
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 saved in the task's context when a task is created.
* As part of scheduling, the task's PAC key is stored/restored to/from the task's context when a task is unscheduled/scheduled from/to run.

stack-overflow-check: Introduce portGET_CURRENT_TOP_OF_STACK macro

When MPU wrapper v2 is used, the task's context is stored in TCB and `pxTopOfStack`` member of TCB points to the context location in TCB. We, therefore, need to read PSP to find the task's current top of stack.

Signed-off-by: Ahmed Ismail <Ahmed.Ismail@arm.com>
2025-01-14 10:50:52 +05:30
..
atomic.h Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
CMakeLists.txt Fix circular dependency in CMake project (#700) 2023-07-10 15:08:59 -07:00
croutine.h Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
deprecated_definitions.h Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
event_groups.h Event Groups: snapshot xEventGroupSetBits returning value while in vTaskSuspendAll (#1143) 2024-09-11 23:07:08 +05:30
FreeRTOS.h Pass core ID to port lock macros (#1212) 2024-12-30 14:28:49 +05:30
list.h Fix cmake example errors (#1037) 2024-04-18 19:08:51 +05:30
message_buffer.h Add Stream Batching Buffer (#916) 2024-04-17 20:24:00 +05:30
mpu_prototypes.h Fix variable name mismatch, mpu_wrappers type mismatch. (#1181) 2024-11-01 10:56:18 -07:00
mpu_syscall_numbers.h Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
mpu_wrappers.h Update MPU prototypes (#1150) 2024-09-30 11:41:52 +05:30
newlib-freertos.h Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
picolibc-freertos.h Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
portable.h ARMv8.1-M: Add task dedicated PAC key support (#1195) 2025-01-14 10:50:52 +05:30
projdefs.h Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
queue.h Updated the return values for functions in queue.c based on the actua… (#1117) 2024-08-12 15:47:30 -07:00
semphr.h Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
stack_macros.h ARMv8.1-M: Add task dedicated PAC key support (#1195) 2025-01-14 10:50:52 +05:30
StackMacros.h Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
stdint.readme Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
stream_buffer.h Add Stream Batching Buffer (#916) 2024-04-17 20:24:00 +05:30
task.h Add an example of human readable table generated by vTaskListTasks() to tash.h (#1215) 2024-12-24 16:41:44 +05:30
timers.h Update comment in the example for declaration of xTimerReset (#1133) 2024-09-02 21:16:23 +05:30