[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen-unstable] x86: Fix e820 walk and allocator initialisation.



# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1197742993 0
# Node ID 257ca4017b416b26120f4a271cf608a23cf23468
# Parent  9152cf7f5b824ef1b6c374a96a477e158e39c422
x86: Fix e820 walk and allocator initialisation.
Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
---
 xen/arch/x86/setup.c |   10 ++++------
 1 files changed, 4 insertions(+), 6 deletions(-)

diff -r 9152cf7f5b82 -r 257ca4017b41 xen/arch/x86/setup.c
--- a/xen/arch/x86/setup.c      Fri Dec 14 10:26:06 2007 -0700
+++ b/xen/arch/x86/setup.c      Sat Dec 15 18:23:13 2007 +0000
@@ -742,8 +742,8 @@ void __init __start_xen(unsigned long mb
     kexec_reserve_area(&boot_e820);
 
     /*
-     * With the boot allocator now seeded, we can walk every RAM region and
-     * map it in its entirety (on x86/64, at least) and notify it to the
+     * With the boot allocator now initialised, we can walk every RAM region
+     * and map it in its entirety (on x86/64, at least) and notify it to the
      * boot allocator.
      */
     for ( i = 0; i < boot_e820.nr_map; i++ )
@@ -769,8 +769,7 @@ void __init __start_xen(unsigned long mb
 #endif
 
         /* Pass mapped memory to allocator /before/ creating new mappings. */
-        if ( s < map_s )
-            init_boot_pages(s, map_s);
+        init_boot_pages(s, min_t(uint64_t, map_s, e));
 
         /* Create new mappings /before/ passing memory to the allocator. */
         if ( map_s < map_e )
@@ -780,8 +779,7 @@ void __init __start_xen(unsigned long mb
                 PAGE_HYPERVISOR);
 
         /* Pass remainder of this memory chunk to the allocator. */
-        if ( map_s < e )
-            init_boot_pages(map_s, e);
+        init_boot_pages(map_s, e);
     }
 
     memguard_init();

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.