linux_dsm_epyc7002/arch/arm64
Shannon Zhao d692b8ad6e arm64: KVM: Add access handler for PMUSERENR register
This register resets as unknown in 64bit mode while it resets as zero
in 32bit mode. Here we choose to reset it as zero for consistency.

PMUSERENR_EL0 holds some bits which decide whether PMU registers can be
accessed from EL0. Add some check helpers to handle the access from EL0.

When these bits are zero, only reading PMUSERENR will trap to EL2 and
writing PMUSERENR or reading/writing other PMU registers will trap to
EL1 other than EL2 when HCR.TGE==0. To current KVM configuration
(HCR.TGE==0) there is no way to get these traps. Here we write 0xf to
physical PMUSERENR register on VM entry, so that it will trap PMU access
from EL0 to EL2. Within the register access handler we check the real
value of guest PMUSERENR register to decide whether this access is
allowed. If not allowed, return false to inject UND to guest.

Signed-off-by: Shannon Zhao <shannon.zhao@linaro.org>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
2016-02-29 18:34:21 +00:00
..
boot arm64: kbuild: make "make install" not depend on vmlinux 2016-02-19 10:33:35 +00:00
configs arm64: defconfig: updates for 4.5 2016-01-26 11:24:41 +00:00
crypto arm/arm64: crypto: assure that ECB modes don't require an IV 2016-02-15 15:48:29 +00:00
include arm64: KVM: Add access handler for PMUSERENR register 2016-02-29 18:34:21 +00:00
kernel arm64: VHE: Add support for running Linux in EL2 mode 2016-02-29 18:34:18 +00:00
kvm arm64: KVM: Add access handler for PMUSERENR register 2016-02-29 18:34:21 +00:00
lib arm64/efi: Make strnlen() available to the EFI namespace 2016-02-16 10:32:10 +00:00
mm mm: ASLR: use get_random_long() 2016-02-27 10:28:52 -08:00
net arm64: bpf: add extra pass to handle faulty codegen 2016-01-17 19:15:26 -05:00
xen xen/arm: introduce HYPERVISOR_platform_op on arm and arm64 2015-12-21 14:40:56 +00:00
Kconfig arm64: VHE: Add support for running Linux in EL2 mode 2016-02-29 18:34:18 +00:00
Kconfig.debug arch: consolidate CONFIG_STRICT_DEVM in lib/Kconfig.debug 2016-01-09 06:30:49 -08:00
Kconfig.platforms ARM: SoC support for Tegra platforms for v4.5 2016-01-22 17:30:52 -08:00
Makefile arm64: kbuild: make "make install" not depend on vmlinux 2016-02-19 10:33:35 +00:00