KVM: arm64: Reject 32bit user PSTATE on asymmetric systems
authorOliver Upton <oliver.upton@linux.dev>
Tue, 16 Aug 2022 19:25:54 +0000 (19:25 +0000)
committerMarc Zyngier <maz@kernel.org>
Wed, 17 Aug 2022 09:29:07 +0000 (10:29 +0100)
commitb10d86fb8e46cc812171728bcd326df2f34e9ed5
treec09436e916099e931372589f3d755c4839e36df1
parentf3c6efc72f3b20ec23566e768979802f0a398f04
KVM: arm64: Reject 32bit user PSTATE on asymmetric systems

KVM does not support AArch32 EL0 on asymmetric systems. To that end,
prevent userspace from configuring a vCPU in such a state through
setting PSTATE.

It is already ABI that KVM rejects such a write on a system where
AArch32 EL0 is unsupported. Though the kernel's definition of a 32bit
system changed in commit 2122a833316f ("arm64: Allow mismatched
32-bit EL0 support"), KVM's did not.

Fixes: 2122a833316f ("arm64: Allow mismatched 32-bit EL0 support")
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20220816192554.1455559-3-oliver.upton@linux.dev
arch/arm64/kvm/guest.c