# HG changeset patch
# User kfraser@xxxxxxxxxxxxxxxxxxxxxxx
# Node ID 1f619b6adbc6ab6ce566b8661b6c2bbf355f502a
# Parent 4122e88b6c752f22a859e10cdb5f0333496b3cf5
[HVM] Fix a problem when destroying a Windows guest.
From: Jun Nakajima <jun.nakajima@xxxxxxxxx>
Signed-off-by: Tom Woller <thomas.woller@xxxxxxx>
---
xen/arch/x86/shadow.c | 7 ++++---
1 files changed, 4 insertions(+), 3 deletions(-)
diff -r 4122e88b6c75 -r 1f619b6adbc6 xen/arch/x86/shadow.c
--- a/xen/arch/x86/shadow.c Fri Jun 02 09:31:35 2006 +0100
+++ b/xen/arch/x86/shadow.c Fri Jun 02 09:36:28 2006 +0100
@@ -3481,15 +3481,16 @@ static void shadow_set_l2e_64(unsigned l
__shadow_get_l3e(v, va, &sl3e);
if (!(l3e_get_flags(sl3e) & _PAGE_PRESENT)) {
- if (create_l2_shadow) {
+ if (create_l2_shadow) {
perfc_incrc(shadow_set_l2e_force_map);
shadow_map_into_current(v, va, PAGING_L2, PAGING_L3);
__shadow_get_l3e(v, va, &sl3e);
} else {
printk("For non HVM shadow, create_l1_shadow:%d\n",
create_l2_shadow);
}
- shadow_update_min_max(l4e_get_pfn(sl4e), l3_table_offset(va));
-
+
+ if ( v->domain->arch.ops->guest_paging_levels == PAGING_L4 )
+ shadow_update_min_max(l4e_get_pfn(sl4e), l3_table_offset(va));
}
if ( put_ref_check ) {
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|