linux/arch/arm64
Marc Zyngier e5a290c4ff arm/arm64: KVM: Add PSCI version selection API
commit 85bd0ba1ff upstream.

Although we've implemented PSCI 0.1, 0.2 and 1.0, we expose either 0.1
or 1.0 to a guest, defaulting to the latest version of the PSCI
implementation that is compatible with the requested version. This is
no different from doing a firmware upgrade on KVM.

But in order to give a chance to hypothetical badly implemented guests
that would have a fit by discovering something other than PSCI 0.2,
let's provide a new API that allows userspace to pick one particular
version of the API.

This is implemented as a new class of "firmware" registers, where
we expose the PSCI version. This allows the PSCI version to be
save/restored as part of a guest migration, and also set to
any supported version if the guest requires it.

Cc: stable@vger.kernel.org #4.16
Reviewed-by: Christoffer Dall <cdall@kernel.org>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2018-05-01 12:58:27 -07:00
..
boot arm64: dts: rockchip: remove vdd_log from rk3399-puma 2018-04-29 11:33:16 +02:00
configs ARM/arm64: SoC platform updates for v4.14 2017-09-10 20:35:46 -07:00
crypto crypto: arm64/aes-ce-cipher - move assembler code to .S file 2018-04-12 12:32:21 +02:00
include arm/arm64: KVM: Add PSCI version selection API 2018-05-01 12:58:27 -07:00
kernel arm64: cpufeature: Fix CTR_EL0 field definitions 2018-02-28 10:19:42 +01:00
kvm arm/arm64: KVM: Add PSCI version selection API 2018-05-01 12:58:27 -07:00
lib arm64: uaccess: Mask __user pointers for __arch_{clear, copy_*}_user 2018-02-16 20:22:52 +01:00
mm mm/vmalloc: add interfaces to free unmapped page table 2018-03-28 18:24:38 +02:00
net bpf, arm64: fix out of bounds access in tail call 2018-03-11 16:23:22 +01:00
xen arm64: kpti: Fix the interaction between ASID switching and software PAN 2018-02-16 20:22:49 +01:00
Kconfig arm64: Add skeleton to harden the branch predictor against aliasing attacks 2018-02-16 20:22:53 +01:00
Kconfig.debug arm64: relocation testing module 2017-04-04 17:03:32 +01:00
Kconfig.platforms ARM: arm64: Devicetree updates for v4.14 2017-09-10 20:54:48 -07:00
Makefile arm64: prevent regressions in compressed kernel image size when upgrading to binutils 2.27 2017-12-20 10:10:29 +01:00