tree 6324f3bb79ea7c7f0199f9dbb5adbc31dd2c5300
parent c38427eea442b5a58b0b95ad88ff769be3abcc0d
author Ahmed Ismail <64546783+AhmedIsmail02@users.noreply.github.com> 1736832052 +0000
committer GitHub <noreply@github.com> 1736832052 +0530
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJnhfQ0CRC1aQ7uu5UhlAAAjEIQAKFOBvrOx8kXv0gjuAaSZkOF
 6/Tn2NETSB7FVha01Kyo582LIs09jSc3pN6XVvjhYYYqDFw4KWyXNkDzwmG9DYge
 Cyt/Y4jZCwnqN82Ow4kSBxEQKfQsr0clvX8+ncJoDoHremZRa3Gn33qPhiJXdbE8
 bUTYKWK0LFYV0rVUQl43CT7hj/FOMUxcOmGfc0hCg5f8Y9kFR516SKvweLJhA8HC
 s1Qg+mMSxNiRJkZDKCgI2wrdUQ2YNcgEQn67fekFOcH1kovKa8YeoeixfDH3TmJZ
 WVCFMpe/3JPb4n7Nvjwbj7rzEQQmIiJQFaKtjx56Mi5KRyPSNkPsCt1whx5REipG
 UoaVuSXDiegYaK7UBbGzDqikriCn1lNAN3jJJz2RqtUG0fvgk5PHGPljUd9y5xQ9
 ZLAbSy3xmvjw3LkXpWLyQAWw91WDWjZzpuuX+J6Jd2M9n5Hz5UYKnQ41oDmhInTT
 CrVzC82zkwffX7Wgqz2lBSRM1L471jLW4ePgTHBdBG7Kl7Tv8bYK6kwUtNRXRV18
 Nkh5GO33MgOmAip7NZVqUug+vbbJESi7WcW6ei6n6IbeEqFy+yYE33rv6BwRkbEu
 y0yWrsSmwm7bnKq1DtZxA9zL82bGc+RK+7SE2P82BjKjnDjley7Kqa/SoN76UAOn
 QYXvvwAFWZenSQG3yla0
 =+klQ
 -----END PGP SIGNATURE-----
 

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>