linux/arch/arm64
Ionela Voinescu 4fcdf106a4 arm64/kvm: disable access to AMU registers from kvm guests
Access to the AMU counters should be disabled by default in kvm guests,
as information from the counters might reveal activity in other guests
or activity on the host.

Therefore, disable access to AMU registers from EL0 and EL1 in kvm
guests by:
 - Hiding the presence of the extension in the feature register
   (SYS_ID_AA64PFR0_EL1) on the VCPU.
 - Disabling access to the AMU registers before switching to the guest.
 - Trapping accesses and injecting an undefined instruction into the
   guest.

Signed-off-by: Ionela Voinescu <ionela.voinescu@arm.com>
Reviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Reviewed-by: Valentin Schneider <valentin.schneider@arm.com>
Acked-by: Marc Zyngier <maz@kernel.org>
Cc: Will Deacon <will@kernel.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
Cc: Julien Thierry <julien.thierry.kdev@gmail.com>
Cc: James Morse <james.morse@arm.com>
Cc: Marc Zyngier <maz@kernel.org>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2020-03-06 16:02:50 +00:00
..
boot ARMv8 Juno/Fast Models fix for v5.6 2020-02-11 14:47:09 -08:00
configs This pull request contains ARM64 defconfig changes for v5.6, please pull 2020-02-11 14:49:38 -08:00
crypto Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2020-01-28 15:38:56 -08:00
include arm64/kvm: disable access to AMU registers from kvm guests 2020-03-06 16:02:50 +00:00
kernel arm64: add support for the AMU extension v1 2020-03-06 16:02:49 +00:00
kvm arm64/kvm: disable access to AMU registers from kvm guests 2020-03-06 16:02:50 +00:00
lib Merge branch 'for-next/asm-annotations' into for-next/core 2020-01-22 11:34:21 +00:00
mm arm64: trap to EL1 accesses to AMU counters from EL0 2020-03-06 16:02:50 +00:00
net
xen arm64: xen: Use modern annotations for assembly functions 2020-01-09 16:09:42 +00:00
Kbuild
Kconfig arm64: add support for the AMU extension v1 2020-03-06 16:02:49 +00:00
Kconfig.debug arm64: mm: convert mm/dump.c to use walk_page_range() 2020-02-04 03:05:25 +00:00
Kconfig.platforms i.MX SoC update for 5.5: 2019-11-06 07:46:42 -08:00
Makefile arm64: Turn "broken gas inst" into real config option 2020-01-15 16:35:12 +00:00