[COMMITTED 2.39 0/7] aarch64: backport SME ZA handling to 2.39

Yury Khrustalev yury.khrustalev@arm.com
Fri Nov 14 12:08:56 GMT 2025


Backport of SME ZA handling in Glibc to 2.39

---

Yury Khrustalev (7):
  aarch64: Disable ZA state of SME in setjmp and sigsetjmp
  aarch64: update tests for SME
  aarch64: define macro for calling __libc_arm_za_disable
  aarch64: clear ZA state of SME before clone and clone3 syscalls
  aarch64: tests for SME
  aarch64: fix cfi directives around __libc_arm_za_disable
  aarch64: fix includes in SME tests

 sysdeps/aarch64/Makefile                     |  14 ++-
 sysdeps/aarch64/__longjmp.S                  |  19 +--
 sysdeps/aarch64/setjmp.S                     |   6 +
 sysdeps/aarch64/tst-sme-clone.c              |  54 +++++++++
 sysdeps/aarch64/tst-sme-clone3.c             |  84 ++++++++++++++
 sysdeps/aarch64/tst-sme-fork.c               |  43 +++++++
 sysdeps/aarch64/tst-sme-helper.h             |  94 +++++++++++++++
 sysdeps/aarch64/tst-sme-jmp.c                |  86 ++------------
 sysdeps/aarch64/tst-sme-signal.c             | 115 +++++++++++++++++++
 sysdeps/aarch64/tst-sme-skeleton.c           | 101 ++++++++++++++++
 sysdeps/aarch64/tst-sme-vfork.c              |  43 +++++++
 sysdeps/aarch64/tst-sme-za-state.c           |  52 +++++++++
 sysdeps/unix/sysv/linux/aarch64/clone.S      |   3 +
 sysdeps/unix/sysv/linux/aarch64/clone3.S     |   3 +
 sysdeps/unix/sysv/linux/aarch64/setcontext.S |  21 +---
 sysdeps/unix/sysv/linux/aarch64/sysdep.h     |  39 +++++++
 sysdeps/unix/sysv/linux/aarch64/vfork.S      |   3 +
 17 files changed, 663 insertions(+), 117 deletions(-)
 create mode 100644 sysdeps/aarch64/tst-sme-clone.c
 create mode 100644 sysdeps/aarch64/tst-sme-clone3.c
 create mode 100644 sysdeps/aarch64/tst-sme-fork.c
 create mode 100644 sysdeps/aarch64/tst-sme-helper.h
 create mode 100644 sysdeps/aarch64/tst-sme-signal.c
 create mode 100644 sysdeps/aarch64/tst-sme-skeleton.c
 create mode 100644 sysdeps/aarch64/tst-sme-vfork.c
 create mode 100644 sysdeps/aarch64/tst-sme-za-state.c

-- 
2.47.3



More information about the Libc-stable mailing list