aboutsummaryrefslogtreecommitdiffstats
path: root/xen/arch/x86/hvm/hvm.c
diff options
context:
space:
mode:
authorZhang Xiantao <xiantao.zhang@intel.com>2013-01-15 11:15:29 +0100
committerZhang Xiantao <xiantao.zhang@intel.com>2013-01-15 11:15:29 +0100
commite3a48bbd60b4178c424c287ad3abeb82f8ae5c1a (patch)
tree2cfeaacdc619f65180cdad1294996918e3c7ee4a /xen/arch/x86/hvm/hvm.c
parent31c1595f59a3099739f60338623900f5f0130f69 (diff)
downloadxen-e3a48bbd60b4178c424c287ad3abeb82f8ae5c1a.tar.gz
xen-e3a48bbd60b4178c424c287ad3abeb82f8ae5c1a.tar.bz2
xen-e3a48bbd60b4178c424c287ad3abeb82f8ae5c1a.zip
nested_ept: Implement guest ept's walker
Implment guest EPT PT walker, some logic is based on shadow's ia32e PT walker. During the PT walking, if the target pages are not in memory, use RETRY mechanism and get a chance to let the target page back. Signed-off-by: Zhang Xiantao <xiantao.zhang@intel.com> Acked-by: Tim Deegan <tim@xen.org> Acked-by: Jun Nakajima <jun.nakajima@intel.com> Acked-by: Eddie Dong <eddie.dong@intel.com> Committed-by: Jan Beulich <jbeulich@suse.com>
Diffstat (limited to 'xen/arch/x86/hvm/hvm.c')
-rw-r--r--xen/arch/x86/hvm/hvm.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/xen/arch/x86/hvm/hvm.c b/xen/arch/x86/hvm/hvm.c
index 292559dae2..374a74046f 100644
--- a/xen/arch/x86/hvm/hvm.c
+++ b/xen/arch/x86/hvm/hvm.c
@@ -1326,6 +1326,7 @@ int hvm_hap_nested_page_fault(paddr_t gpa,
access_r, access_w, access_x);
switch (rv) {
case NESTEDHVM_PAGEFAULT_DONE:
+ case NESTEDHVM_PAGEFAULT_RETRY:
return 1;
case NESTEDHVM_PAGEFAULT_L1_ERROR:
/* An error occured while translating gpa from