[PATCH v3 0/2] aarch64: Support locking GCS

Yury Khrustalev yury.khrustalev@arm.com
Mon Feb 9 11:58:43 GMT 2026


Lock GCS if it is enabled based on the existing tunable
glibc.cpu.aarch64_gcs unless selected GCS policy is OPTIONAL
in which case do not lock GCS.

This is a compromise implementation compared to full control
over locking GCS features described in [1].

I think this implementation allows back-porting to earlier
Glibc releases, would it be OK to back-port this?

---

Passes regression on aarch64. GCS tests checked on Arm Fixed
Virtual Platform (FVP) model [2]. OK for trunk?
Base commit: af79874ffd

[1]: https://inbox.sourceware.org/libc-help/aXdRdmU95P4tbuES@arm.com/
[2]: https://inbox.sourceware.org/libc-help/aIc3ElNTSQrelCK9@arm.com/

---

Yury Khrustalev (2):
  aarch64: Lock GCS status at startup
  aarch64: Tests for locking GCS

 manual/tunables.texi                          |  46 +++---
 sysdeps/aarch64/dl-gcs.c                      |   2 +-
 sysdeps/aarch64/dl-start.S                    |  18 ++-
 sysdeps/unix/sysv/linux/aarch64/Makefile      |  23 +++
 sysdeps/unix/sysv/linux/aarch64/libc-start.h  |  29 +++-
 .../unix/sysv/linux/aarch64/tst-gcs-execv.c   |  60 ++++++++
 .../unix/sysv/linux/aarch64/tst-gcs-fork.c    |  79 +++++++++++
 .../sysv/linux/aarch64/tst-gcs-lock-ptrace.c  | 133 ++++++++++++++++++
 .../sysv/linux/aarch64/tst-gcs-lock-static.c  |   1 +
 .../unix/sysv/linux/aarch64/tst-gcs-lock.c    |  63 +++++++++
 .../linux/aarch64/tst-gcs-unlock-static.c     |   2 +
 .../unix/sysv/linux/aarch64/tst-gcs-unlock.c  |   2 +
 12 files changed, 433 insertions(+), 25 deletions(-)
 create mode 100644 sysdeps/unix/sysv/linux/aarch64/tst-gcs-execv.c
 create mode 100644 sysdeps/unix/sysv/linux/aarch64/tst-gcs-fork.c
 create mode 100644 sysdeps/unix/sysv/linux/aarch64/tst-gcs-lock-ptrace.c
 create mode 100644 sysdeps/unix/sysv/linux/aarch64/tst-gcs-lock-static.c
 create mode 100644 sysdeps/unix/sysv/linux/aarch64/tst-gcs-lock.c
 create mode 100644 sysdeps/unix/sysv/linux/aarch64/tst-gcs-unlock-static.c
 create mode 100644 sysdeps/unix/sysv/linux/aarch64/tst-gcs-unlock.c

-- 
2.47.3



More information about the Libc-alpha mailing list