KVM: vmx: hyper-v: don't pass EPT configuration info to vmx_hv_remote_flush_tlb()
authorVitaly Kuznetsov <vkuznets@redhat.com>
Thu, 11 Oct 2018 10:03:12 +0000 (12:03 +0200)
committerPaolo Bonzini <pbonzini@redhat.com>
Sat, 13 Oct 2018 09:38:54 +0000 (11:38 +0200)
commit5f8bb004bca43f7b5043c02b4aa5b9b43e15fe50
tree9fa36531e4f2a6980e5a82a5370247966d3eeea3
parent4cebf459b6eb834eb28149da7ff51fadd83f2b19
KVM: vmx: hyper-v: don't pass EPT configuration info to vmx_hv_remote_flush_tlb()

I'm observing random crashes in multi-vCPU L2 guests running on KVM on
Hyper-V. I bisected the issue to the commit 877ad952be3d ("KVM: vmx: Add
tlb_remote_flush callback support"). Hyper-V TLFS states:

"AddressSpace specifies an address space ID (an EPT PML4 table pointer)"

So apparently, Hyper-V doesn't expect us to pass naked EPTP, only PML4
pointer should be used. Strip off EPT configuration information before
calling into vmx_hv_remote_flush_tlb().

Fixes: 877ad952be3d ("KVM: vmx: Add tlb_remote_flush callback support")
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/vmx.c