aboutsummaryrefslogtreecommitdiffstats
path: root/xen/common/page_alloc.c
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2010-02-03 09:44:12 +0000
committerKeir Fraser <keir.fraser@citrix.com>2010-02-03 09:44:12 +0000
commit3cb68d2b59ab6955b92578faa797d486d022baa1 (patch)
tree1dde9a8cf401fa464a788a8fa091067daca3a591 /xen/common/page_alloc.c
parent1921835bf441b67b4d35b1e49ef32163359a7752 (diff)
downloadxen-3cb68d2b59ab6955b92578faa797d486d022baa1.tar.gz
xen-3cb68d2b59ab6955b92578faa797d486d022baa1.tar.bz2
xen-3cb68d2b59ab6955b92578faa797d486d022baa1.zip
tboot: fix S3 issue for Intel Trusted Execution Technology.
Those unmapped pages cause page fault when MACing them and finally cause S3 failure. Signed-off-by: Shane Wang <shane.wang@intel.com>
Diffstat (limited to 'xen/common/page_alloc.c')
-rw-r--r--xen/common/page_alloc.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c
index 7139c3d39b..0e1925a3bb 100644
--- a/xen/common/page_alloc.c
+++ b/xen/common/page_alloc.c
@@ -932,8 +932,6 @@ void init_xenheap_pages(paddr_t ps, paddr_t pe)
if ( pe <= ps )
return;
- memguard_guard_range(maddr_to_virt(ps), pe - ps);
-
/*
* Yuk! Ensure there is a one-page buffer between Xen and Dom zones, to
* prevent merging of power-of-two blocks across the zone boundary.
@@ -943,6 +941,8 @@ void init_xenheap_pages(paddr_t ps, paddr_t pe)
if ( !is_xen_heap_mfn(paddr_to_pfn(pe)) )
pe -= PAGE_SIZE;
+ memguard_guard_range(maddr_to_virt(ps), pe - ps);
+
init_heap_pages(maddr_to_page(ps), (pe - ps) >> PAGE_SHIFT);
}