aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/mm/init_32.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/mm/init_32.c')
-rw-r--r--arch/x86/mm/init_32.c24
1 files changed, 8 insertions, 16 deletions
diff --git a/arch/x86/mm/init_32.c b/arch/x86/mm/init_32.c
index ee1091a46964..00168e65688a 100644
--- a/arch/x86/mm/init_32.c
+++ b/arch/x86/mm/init_32.c
@@ -723,25 +723,17 @@ void mark_rodata_ro(void)
723 unsigned long start = PFN_ALIGN(_text); 723 unsigned long start = PFN_ALIGN(_text);
724 unsigned long size = PFN_ALIGN(_etext) - start; 724 unsigned long size = PFN_ALIGN(_etext) - start;
725 725
726#ifndef CONFIG_KPROBES 726 set_pages_ro(virt_to_page(start), size >> PAGE_SHIFT);
727#ifdef CONFIG_HOTPLUG_CPU 727 printk(KERN_INFO "Write protecting the kernel text: %luk\n",
728 /* It must still be possible to apply SMP alternatives. */ 728 size >> 10);
729 if (num_possible_cpus() <= 1)
730#endif
731 {
732 set_pages_ro(virt_to_page(start), size >> PAGE_SHIFT);
733 printk(KERN_INFO "Write protecting the kernel text: %luk\n",
734 size >> 10);
735 729
736#ifdef CONFIG_CPA_DEBUG 730#ifdef CONFIG_CPA_DEBUG
737 printk(KERN_INFO "Testing CPA: Reverting %lx-%lx\n", 731 printk(KERN_INFO "Testing CPA: Reverting %lx-%lx\n",
738 start, start+size); 732 start, start+size);
739 set_pages_rw(virt_to_page(start), size>>PAGE_SHIFT); 733 set_pages_rw(virt_to_page(start), size>>PAGE_SHIFT);
740 734
741 printk(KERN_INFO "Testing CPA: write protecting again\n"); 735 printk(KERN_INFO "Testing CPA: write protecting again\n");
742 set_pages_ro(virt_to_page(start), size>>PAGE_SHIFT); 736 set_pages_ro(virt_to_page(start), size>>PAGE_SHIFT);
743#endif
744 }
745#endif 737#endif
746 start += size; 738 start += size;
747 size = (unsigned long)__end_rodata - start; 739 size = (unsigned long)__end_rodata - start;