]> xenbits.xensource.com Git - people/liuw/libxenctrl-split/mini-os.git/commitdiff
minios: do not systematically free the page under shared info, as the
authorKeir Fraser <keir.fraser@citrix.com>
Fri, 20 Jun 2008 16:44:50 +0000 (17:44 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Fri, 20 Jun 2008 16:44:50 +0000 (17:44 +0100)
guest booted by PV-GRUB will need it.

Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
arch/x86/mm.c

index ea8158045b89687edd11e9637d0b5a5a3fb5b75e..85b542437f0cf5adba5d45bb790f45d4c42ae051 100644 (file)
@@ -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)