]> Git Repo - linux.git/commit
x86: kvm: use alternatives for VMCALL vs. VMMCALL if kernel text is read-only
authorPaolo Bonzini <[email protected]>
Mon, 22 Sep 2014 11:17:48 +0000 (13:17 +0200)
committerPaolo Bonzini <[email protected]>
Wed, 24 Sep 2014 12:07:57 +0000 (14:07 +0200)
commitc1118b3602c2329671ad5ec8bdf8e374323d6343
tree57dce6397f2dbf19701fa1a7671abcde453e170b
parent81760dccf8d1fe5b128b58736fe3f56a566133cb
x86: kvm: use alternatives for VMCALL vs. VMMCALL if kernel text is read-only

On x86_64, kernel text mappings are mapped read-only with CONFIG_DEBUG_RODATA.
In that case, KVM will fail to patch VMCALL instructions to VMMCALL
as required on AMD processors.

The failure mode is currently a divide-by-zero exception, which obviously
is a KVM bug that has to be fixed.  However, picking the right instruction
between VMCALL and VMMCALL will be faster and will help if you cannot upgrade
the hypervisor.

Reported-by: Chris Webb <[email protected]>
Tested-by: Chris Webb <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: "H. Peter Anvin" <[email protected]>
Cc: [email protected]
Acked-by: Borislav Petkov <[email protected]>
Signed-off-by: Paolo Bonzini <[email protected]>
arch/x86/include/asm/cpufeature.h
arch/x86/include/asm/kvm_para.h
arch/x86/kernel/cpu/amd.c
This page took 0.058987 seconds and 4 git commands to generate.