[PATCH v3 0/4] arm64: Add AT_HWCAP3

Mark Brown broonie at kernel.org
Wed Jun 29 05:20:43 PDT 2022


Currently for arm64 we expose hwcaps to userspace using the low 32 bits
of AT_HWCAP and AT_HWCAP2. Due to the ever expanding capabilties of the
architecture we have now allocated all the available bits in this scheme
so we need to expand, either using the higher bits or adding a new
AT_HWCAP3. Discussions with glibc developers suggested that AT_HWCAP3
would be cleaner for them so the series adopts that approach.

The final patch adds an initial value in AT_HWCAP3 reporting the
presence of FEAT_EBF16, this will conflict with my series converting
ID_AA64ISAR1_EL1 to be generated. I've got a version based on top of
that which I can send if that's convenient.

v3:
 - Expand comment on CPU_FEATURES_PER_HWCAP.
v2:
 - Rebase onto v5.19-rc3.

Mark Brown (4):
  arm64/cpufeature: Store elf_hwcaps as an array rather than unsigned
    long
  elf: Allow architectures to provide AT_HWCAP3
  arm64/cpufeature: Support AT_HWCAP3
  arm64/hwcap: Support FEAT_EBF16

 Documentation/arm64/elf_hwcaps.rst  | 10 +++++++---
 arch/arm64/include/asm/cpufeature.h |  9 ++++++++-
 arch/arm64/include/asm/hwcap.h      | 17 ++++++++++++-----
 arch/arm64/include/uapi/asm/hwcap.h |  5 +++++
 arch/arm64/kernel/cpufeature.c      | 28 +++++++++++++++++++++-------
 arch/arm64/kernel/cpuinfo.c         |  1 +
 fs/binfmt_elf.c                     |  3 +++
 include/uapi/linux/auxvec.h         |  1 +
 8 files changed, 58 insertions(+), 16 deletions(-)


base-commit: a111daf0c53ae91e71fd2bfe7497862d14132e3e
-- 
2.30.2




More information about the linux-arm-kernel mailing list