Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
[pandora-kernel.git] / arch / x86 / xen / setup.c
index 8e2c9f2..b1dbdaa 100644 (file)
@@ -8,6 +8,7 @@
 #include <linux/sched.h>
 #include <linux/mm.h>
 #include <linux/pm.h>
+#include <linux/memblock.h>
 
 #include <asm/elf.h>
 #include <asm/vdso.h>
@@ -61,7 +62,7 @@ static __init void xen_add_extra_mem(unsigned long pages)
        e820_add_region(extra_start, size, E820_RAM);
        sanitize_e820_map(e820.map, ARRAY_SIZE(e820.map), &e820.nr_map);
 
-       reserve_early(extra_start, extra_start + size, "XEN EXTRA");
+       memblock_x86_reserve_range(extra_start, extra_start + size, "XEN EXTRA");
 
        xen_extra_mem_size += size;
 
@@ -203,6 +204,9 @@ char * __init xen_memory_setup(void)
         * Even though this is normal, usable memory under Xen, reserve
         * ISA memory anyway because too many things think they can poke
         * about in there.
+        *
+        * In a dom0 kernel, this region is identity mapped with the
+        * hardware ISA area, so it really is out of bounds.
         */
        e820_add_region(ISA_START_ADDRESS, ISA_END_ADDRESS - ISA_START_ADDRESS,
                        E820_RESERVED);
@@ -213,7 +217,7 @@ char * __init xen_memory_setup(void)
         *  - xen_start_info
         * See comment above "struct start_info" in <xen/interface/xen.h>
         */
-       reserve_early(__pa(xen_start_info->mfn_list),
+       memblock_x86_reserve_range(__pa(xen_start_info->mfn_list),
                      __pa(xen_start_info->pt_base),
                        "XEN START INFO");
 
@@ -366,7 +370,5 @@ void __init xen_arch_setup(void)
 
        pm_idle = xen_idle;
 
-       paravirt_disable_iospace();
-
        fiddle_vdso();
 }