]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/x86/mm/init_32.c
Merge branch 'linus' into x86/core
[linux-2.6-omap-h63xx.git] / arch / x86 / mm / init_32.c
index 029e8cffca9e11cf1794b0cad1c74029eaefa815..4974e97dedfedad5adcdebc142c3ef2771f99c3a 100644 (file)
@@ -47,6 +47,7 @@
 #include <asm/paravirt.h>
 #include <asm/setup.h>
 #include <asm/cacheflush.h>
+#include <asm/smp.h>
 
 unsigned int __VMALLOC_RESERVE = 128 << 20;
 
@@ -844,6 +845,9 @@ unsigned long __init_refok init_memory_mapping(unsigned long start,
                reserve_early(table_start << PAGE_SHIFT,
                                 table_end << PAGE_SHIFT, "PGTABLE");
 
+       if (!after_init_bootmem)
+               early_memtest(start, end);
+
        return end >> PAGE_SHIFT;
 }
 
@@ -868,8 +872,6 @@ void __init paging_init(void)
         */
        sparse_init();
        zone_sizes_init();
-
-       paravirt_post_allocator_init();
 }
 
 /*
@@ -1035,6 +1037,8 @@ void mark_rodata_ro(void)
        unsigned long start = PFN_ALIGN(_text);
        unsigned long size = PFN_ALIGN(_etext) - start;
 
+#ifndef CONFIG_DYNAMIC_FTRACE
+       /* Dynamic tracing modifies the kernel text section */
        set_pages_ro(virt_to_page(start), size >> PAGE_SHIFT);
        printk(KERN_INFO "Write protecting the kernel text: %luk\n",
                size >> 10);
@@ -1047,6 +1051,8 @@ void mark_rodata_ro(void)
        printk(KERN_INFO "Testing CPA: write protecting again\n");
        set_pages_ro(virt_to_page(start), size>>PAGE_SHIFT);
 #endif
+#endif /* CONFIG_DYNAMIC_FTRACE */
+
        start += size;
        size = (unsigned long)__end_rodata - start;
        set_pages_ro(virt_to_page(start), size >> PAGE_SHIFT);