1
0
mirror of https://git.yoctoproject.org/meta-arm synced 2026-07-16 15:57:19 +00:00

Add GCS prototype

Signed-off-by: Ross Burton <ross.burton@arm.com>
This commit is contained in:
Ross Burton
2024-04-16 15:08:09 +00:00
parent 38bce82e42
commit b1dd7d90f6
14 changed files with 12377 additions and 0 deletions
+33
View File
@@ -0,0 +1,33 @@
Guarded Control Stack prototype
===============================
To build:
First, install Kas if you don't already have it:
$ pip3 install --user kas
Then use Kas to build an image:
$ kas build --update gcs.yml
To run the image inside an FVP:
$ kas shell gcs.yml -c "../../scripts/runfvp --console"
Verification:
On boot, the kernel should detect that the cores have GCS:
CPU features: detected: Guarded Control Stack (GCS)
Binaries should be tagged with PAC/BTI/GCS:
$ readelf -n /bin/bash | grep AArch
Properties: AArch64 feature: BTI, PAC, GCS
Enabling GCS tunables shouldn't cause crashes:
$ GLIBC_TUNABLES=glibc.cpu.aarch64_gcs=1:glibc.cpu.aarch64_gcs_policy=2 ls /
bin boot dev etc home lib lost+found media mnt proc run sbin sys tmp usr var