aboutsummaryrefslogtreecommitdiffstats
path: root/extras/mini-os/arch
diff options
context:
space:
mode:
Diffstat (limited to 'extras/mini-os/arch')
-rw-r--r--extras/mini-os/arch/x86/mm.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/extras/mini-os/arch/x86/mm.c b/extras/mini-os/arch/x86/mm.c
index ea8158045b..85b542437f 100644
--- a/extras/mini-os/arch/x86/mm.c
+++ b/extras/mini-os/arch/x86/mm.c
@@ -528,18 +528,13 @@ void *map_frames_ex(unsigned long *f, unsigned long n, unsigned long stride,
static void clear_bootstrap(void)
{
- xen_pfn_t mfns[] = { virt_to_mfn(&shared_info) };
- int n = sizeof(mfns)/sizeof(*mfns);
pte_t nullpte = { };
/* Use first page as the CoW zero page */
memset(&_text, 0, PAGE_SIZE);
- mfn_zero = pfn_to_mfn((unsigned long) &_text);
- if (HYPERVISOR_update_va_mapping((unsigned long) &_text, nullpte, UVMF_INVLPG))
- printk("Unable to unmap first page\n");
-
- if (free_physical_pages(mfns, n) != n)
- printk("Unable to free bootstrap pages\n");
+ mfn_zero = virt_to_mfn((unsigned long) &_text);
+ if (HYPERVISOR_update_va_mapping(0, nullpte, UVMF_INVLPG))
+ printk("Unable to unmap NULL page\n");
}
void arch_init_p2m(unsigned long max_pfn)