]> git.baikalelectronics.ru Git - kernel.git/commit
KVM: arm64: Actually prevent SMC64 SYSTEM_RESET2 from AArch32
authorOliver Upton <oupton@google.com>
Tue, 22 Mar 2022 18:35:37 +0000 (18:35 +0000)
committerMarc Zyngier <maz@kernel.org>
Wed, 6 Apr 2022 09:39:39 +0000 (10:39 +0100)
commit11a4cca29aa176c4f8e320b3c3810c32322df724
treeababe6af1072773cc5fec01343a0c61bae836018
parent9e5ce94043609bc3da30d3d3a5b923c0b7ea1636
KVM: arm64: Actually prevent SMC64 SYSTEM_RESET2 from AArch32

The SMCCC does not allow the SMC64 calling convention to be used from
AArch32. While KVM checks to see if the calling convention is allowed in
PSCI_1_0_FN_PSCI_FEATURES, it does not actually prevent calls to
unadvertised PSCI v1.0+ functions.

Hoist the check to see if the requested function is allowed into
kvm_psci_call(), thereby preventing SMC64 calls from AArch32 for all
PSCI versions.

Fixes: df3e5c4932bd ("KVM: arm64: Expose PSCI SYSTEM_RESET2 call to the guest")
Acked-by: Will Deacon <will@kernel.org>
Reviewed-by: Reiji Watanabe <reijiw@google.com>
Signed-off-by: Oliver Upton <oupton@google.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20220322183538.2757758-3-oupton@google.com
arch/arm64/kvm/psci.c