ARM: fix PAGE_KERNEL
authorRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 24 Dec 2009 10:16:21 +0000 (10:16 +0000)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 24 Dec 2009 10:16:21 +0000 (10:16 +0000)
PAGE_KERNEL should not be executable; any area marked executable can
be prefetched into the instruction cache.  We don't want vmalloc areas
to be read in this way.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/mm/mmu.c

index 8c7fbd19a4b381141efce57ea57e56f3ad279d41..1708da82da96c127267b8edc59f916a0bec6a286 100644 (file)
@@ -453,8 +453,7 @@ static void __init build_mem_type_table(void)
 
        pgprot_user   = __pgprot(L_PTE_PRESENT | L_PTE_YOUNG | user_pgprot);
        pgprot_kernel = __pgprot(L_PTE_PRESENT | L_PTE_YOUNG |
-                                L_PTE_DIRTY | L_PTE_WRITE |
-                                L_PTE_EXEC | kern_pgprot);
+                                L_PTE_DIRTY | L_PTE_WRITE | kern_pgprot);
 
        mem_types[MT_LOW_VECTORS].prot_l1 |= ecc_mask;
        mem_types[MT_HIGH_VECTORS].prot_l1 |= ecc_mask;