From a28f0f798eebd85a7f62c4bdf1855202c67d39f5 Mon Sep 17 00:00:00 2001 From: Keir Fraser Date: Fri, 24 Dec 2010 10:28:35 +0000 Subject: [PATCH] x86 hvm ept: Remove EPT guest linear address validation For EPT violation resulting from an attempt to load the guest PDPTEs as part of the execution of the MOV CR instruction, the EPT_GLA_VALID is not valid. This situation should not happen in most situation, since we always populate guest memory. But this is not ture for PAE guest under the PoD/Page sharing situation. In that situation, a page pointed by CR3 may be un-populated, and we need handle it in such situation. Signed-off-by: Jiang, Yunhong xen-unstable changeset: 22574:b5418c045d02 xen-unstable date: Tue Dec 21 18:09:34 2010 +0000 --- xen/arch/x86/hvm/vmx/vmx.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c index 30ed7b2fc1..3e4c8b6177 100644 --- a/xen/arch/x86/hvm/vmx/vmx.c +++ b/xen/arch/x86/hvm/vmx/vmx.c @@ -2129,8 +2129,7 @@ static void ept_handle_violation(unsigned long qualification, paddr_t gpa) __trace_var(TRC_HVM_NPF, 0, sizeof(_d), &_d); } - if ( (qualification & EPT_GLA_VALID) && - hvm_hap_nested_page_fault(gfn) ) + if ( hvm_hap_nested_page_fault(gfn) ) return; /* Everything else is an error. */ -- 2.39.5