Re: [PATCH 6/6] arm64: compat: Check for AArch32 state
From: Will Deacon
Date: Tue Feb 09 2016 - 12:36:11 EST
On Thu, Jan 28, 2016 at 11:32:17AM +0000, Suzuki K Poulose wrote:
> Make sure we have AArch32 state available for running COMPAT binaries.
>
> Signed-off-by: Yury Norov <ynorov@xxxxxxxxxxxxxxxxxx>
> [ Added checks for ELF HWCAP, Use cap bit in cap_hwcaps ]
> Signed-off-by: Suzuki K Poulose <suzuki.poulose@xxxxxxx>
[...]
> diff --git a/arch/arm64/kernel/cpuinfo.c b/arch/arm64/kernel/cpuinfo.c
> index 8cc2a86..2890b74 100644
> --- a/arch/arm64/kernel/cpuinfo.c
> +++ b/arch/arm64/kernel/cpuinfo.c
> @@ -124,7 +124,8 @@ static int c_show(struct seq_file *m, void *v)
> * software which does already (at least for 32-bit).
> */
> seq_puts(m, "Features\t:");
> - if (personality(current->personality) == PER_LINUX32) {
> + if (system_supports_32bit_el0() &&
> + personality(current->personality) == PER_LINUX32) {
Wouldn't it be better to prevent tasks changing to the PER_LINUX32
personality on systems that don't support AArch32 at EL0?
Will