diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2009-12-24 10:16:21 +0000 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2009-12-24 10:16:21 +0000 |
commit | 6dc995a3da9adfa83d61ccf06aa1afa5f6ab764f (patch) | |
tree | 02ebf4534f9eaa964b8a840ca0d70323e6bb460a /arch/arm/mm/mmu.c | |
parent | 52e8bfd81af5492a14cc3a4641d4c80d05b66bdb (diff) | |
download | lwn-6dc995a3da9adfa83d61ccf06aa1afa5f6ab764f.tar.gz lwn-6dc995a3da9adfa83d61ccf06aa1afa5f6ab764f.zip |
ARM: fix PAGE_KERNEL
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>
Diffstat (limited to 'arch/arm/mm/mmu.c')
-rw-r--r-- | arch/arm/mm/mmu.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/arch/arm/mm/mmu.c b/arch/arm/mm/mmu.c index 8c7fbd19a4b3..1708da82da96 100644 --- a/arch/arm/mm/mmu.c +++ b/arch/arm/mm/mmu.c @@ -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; |