44 lines
1.4 KiB
Diff
44 lines
1.4 KiB
Diff
From: Marcelo Tosatti <mtosatti@redhat.com>
|
|
Date: Fri, 18 May 2012 17:58:48 -0300
|
|
Subject: KVM: nVMX: Fix erroneous exception bitmap check
|
|
|
|
From: Nadav Har'El <nyh@math.technion.ac.il>
|
|
|
|
(cherry picked from commit 9587190107d0c0cbaccbf7bf6b0245d29095a9ae)
|
|
|
|
The code which checks whether to inject a pagefault to L1 or L2 (in
|
|
nested VMX) was wrong, incorrect in how it checked the PF_VECTOR bit.
|
|
Thanks to Dan Carpenter for spotting this.
|
|
|
|
Signed-off-by: Nadav Har'El <nyh@il.ibm.com>
|
|
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
|
|
Signed-off-by: Avi Kivity <avi@redhat.com>
|
|
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
|
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
|
|
---
|
|
arch/x86/kvm/vmx.c | 2 +-
|
|
1 files changed, 1 insertions(+), 1 deletions(-)
|
|
|
|
diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
|
|
index 4ea7678..7ac5993 100644
|
|
--- a/arch/x86/kvm/vmx.c
|
|
+++ b/arch/x86/kvm/vmx.c
|
|
@@ -1677,7 +1677,7 @@ static int nested_pf_handled(struct kvm_vcpu *vcpu)
|
|
struct vmcs12 *vmcs12 = get_vmcs12(vcpu);
|
|
|
|
/* TODO: also check PFEC_MATCH/MASK, not just EB.PF. */
|
|
- if (!(vmcs12->exception_bitmap & PF_VECTOR))
|
|
+ if (!(vmcs12->exception_bitmap & (1u << PF_VECTOR)))
|
|
return 0;
|
|
|
|
nested_vmx_vmexit(vcpu);
|
|
--
|
|
1.7.6.4
|
|
|
|
--
|
|
To unsubscribe from this list: send the line "unsubscribe stable" in
|
|
the body of a message to majordomo@vger.kernel.org
|
|
More majordomo info at http://vger.kernel.org/majordomo-info.html
|
|
|
|
|