summaryrefslogtreecommitdiff
path: root/i386/intel/pmap.c
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2011-08-28 23:09:20 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2011-08-28 23:09:20 +0200
commit9899c659b1a2436085e772d02f5394db7869bf64 (patch)
tree7b54d83dac82931647179eef4bf6b0079bac3b48 /i386/intel/pmap.c
parent3d4e83e3e22b16aeeab0c75c290a3846d1ea99f7 (diff)
Fix pmap_clear_bootstrap_pagetable with >4G mfns
* i386/intel/pmap.c (pmap_clear_bootstrap_pagetable): Use pte_to_pa instead of atop.
Diffstat (limited to 'i386/intel/pmap.c')
-rw-r--r--i386/intel/pmap.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/i386/intel/pmap.c b/i386/intel/pmap.c
index c15538f..9f34f2d 100644
--- a/i386/intel/pmap.c
+++ b/i386/intel/pmap.c
@@ -868,7 +868,7 @@ void pmap_clear_bootstrap_pagetable(pt_entry_t *base) {
#endif /* PAE */
for (i = 0; i < NPTES; i++) {
pt_entry_t pde = dir[i];
- unsigned long pfn = mfn_to_pfn(atop(pde));
+ unsigned long pfn = atop(pte_to_pa(pde));
void *pgt = (void*) phystokv(ptoa(pfn));
if (pde & INTEL_PTE_VALID)
hyp_free_page(pfn, pgt);