kvm: arm64: Disable compiler instrumentation for hypervisor code

With the recent rewrite of the arm64 KVM hypervisor code in C, enabling
certain options like KASAN would allow the compiler to generate memory
accesses or function calls to addresses not mapped at EL2. This patch
disables the compiler instrumentation on the arm64 hypervisor code for
gcov-based profiling (GCOV_KERNEL), undefined behaviour sanity checker
(UBSAN) and kernel address sanitizer (KASAN).

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Cc: Christoffer Dall <christoffer.dall@linaro.org>
Cc: Marc Zyngier <marc.zyngier@arm.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: <stable@vger.kernel.org> # 4.5+
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
(cherry picked from commit a6cdf1c08c)
Signed-off-by: Alex Shi <alex.shi@linaro.org>

 Conflicts:
	arch/arm64/kvm/hyp/Makefile
This commit is contained in:
Catalin Marinas 2016-03-21 11:00:17 +00:00 committed by Alex Shi
parent 89912966d1
commit 8db423d761

View File

@ -12,3 +12,7 @@ obj-$(CONFIG_KVM_ARM_HOST) += switch.o
obj-$(CONFIG_KVM_ARM_HOST) += fpsimd.o
obj-$(CONFIG_KVM_ARM_HOST) += tlb.o
obj-$(CONFIG_KVM_ARM_HOST) += hyp-entry.o
GCOV_PROFILE := n
KASAN_SANITIZE := n
UBSAN_SANITIZE := n