[lkml]   [2015]   [Sep]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subject[PATCH v3 0/2] arm64: introduce run-time detection of aarch32 support
This is needed to avoid loading aarch32 binaries if COMPAT is enabled, but
aarch32 is not supported by specific platform.

First patch fixes hidden header dependencies in arch/arm64/include/asm/cpufeature.h.
It's not related to the issue, but helps to avoid build failure that happens
if one applies second patch only.

Second patch adds run-time detection of aarch32 support, and rejects kernel to
load such binaries, if not supported.

Tested on ThunderX.

- first patch message extended with explanation for cpu_feature macro move;
- in second patch, restored pfr0 masking in id_aa64pfr0_aarch32_el0().

- add missing <linux/compiler.h> for the __attribute_const__ on
- move cpu_feature macro under the __ASSEMBLY__ guard.
- check that all CPUs support AArch32, not the current only,
the same way as for endianness support.

Signed-off-by: Yury Norov <>

Yury Norov (2):
arm64: cpufeature.h: resolve hidden header dependencies
arm64: don't load 32-bit binaries if platform has no aarch32_el0

arch/arm64/include/asm/cpufeature.h | 10 +++++++++-
arch/arm64/include/asm/cputype.h | 8 ++++++++
arch/arm64/include/asm/elf.h | 6 ++++--
arch/arm64/kernel/cpuinfo.c | 12 ++++++++++++
4 files changed, 33 insertions(+), 3 deletions(-)


 \ /
  Last update: 2015-09-02 18:21    [W:0.056 / U:0.120 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site