summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2023-05-26 01:54:33 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2023-05-26 01:54:33 +0200
commitf7e039d23dd7ed50a4af53fa63ee322e7e4b386c (patch)
tree7ffbf0ec47ac15b4d9a6ba86dad59e7817082a34
parent54a4ca27230ae85bf75804d5d581ebf68e620cee (diff)
xen: Fix 64bit build
-rw-r--r--i386/intel/pmap.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/i386/intel/pmap.c b/i386/intel/pmap.c
index 18cfa18b..0305eb3f 100644
--- a/i386/intel/pmap.c
+++ b/i386/intel/pmap.c
@@ -1407,8 +1407,9 @@ pmap_t pmap_create(vm_size_t size)
pmap_set_page_readonly(p->l4base);
pmap_set_page_readonly(p->user_l4base);
pmap_set_page_readonly(p->user_pdpbase);
-#endif
+#else
pmap_set_page_readonly(p->pdpbase);
+#endif
#endif /* MACH_PV_PAGETABLES */
#else /* PAE */
p->dirbase = page_dir[0];
@@ -3126,10 +3127,15 @@ pmap_make_temporary_mapping(void)
#endif
#ifdef MACH_PV_PAGETABLES
- for (i = 0; i < PDPNUM; i++)
+#ifndef __x86_64__
+ const int PDPNUM_KERNEL = PDPNUM;
+#endif
+ for (i = 0; i < PDPNUM_KERNEL; i++)
pmap_set_page_readonly_init((void*) kernel_page_dir + i * INTEL_PGBYTES);
#if PAE
+#ifndef __x86_64__
pmap_set_page_readonly_init(kernel_pmap->pdpbase);
+#endif
#endif /* PAE */
#endif /* MACH_PV_PAGETABLES */