diff options
author | Keir Fraser <keir@xen.org> | 2010-12-24 10:28:35 +0000 |
---|---|---|
committer | Keir Fraser <keir@xen.org> | 2010-12-24 10:28:35 +0000 |
commit | a28f0f798eebd85a7f62c4bdf1855202c67d39f5 (patch) | |
tree | a77e93b0d384f6374e3856a278e5276b8ba82475 | |
parent | 28574483f1d50237e3abc0c4b93ed35d90748bb7 (diff) | |
download | xen-a28f0f798eebd85a7f62c4bdf1855202c67d39f5.tar.gz xen-a28f0f798eebd85a7f62c4bdf1855202c67d39f5.tar.bz2 xen-a28f0f798eebd85a7f62c4bdf1855202c67d39f5.zip |
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 <yunhong.jiang@intel.com>
xen-unstable changeset: 22574:b5418c045d02
xen-unstable date: Tue Dec 21 18:09:34 2010 +0000
-rw-r--r-- | xen/arch/x86/hvm/vmx/vmx.c | 3 |
1 files changed, 1 insertions, 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. */ |