]> git.baikalelectronics.ru Git - kernel.git/commit
ARM: mm: introduce present, faulting entries for PAGE_NONE
authorWill Deacon <will.deacon@arm.com>
Sat, 1 Sep 2012 04:22:12 +0000 (05:22 +0100)
committerWill Deacon <will.deacon@arm.com>
Fri, 9 Nov 2012 14:13:20 +0000 (14:13 +0000)
commit843df69a655c2890e74e0fffa087de0729b829cd
tree405c83d298530b65bb64630da52cfb368927691a
parent544a6a0e4891a16e302bbb82039aa067701f3cb0
ARM: mm: introduce present, faulting entries for PAGE_NONE

PROT_NONE mappings apply the page protection attributes defined by _P000
which translate to PAGE_NONE for ARM. These attributes specify an XN,
RDONLY pte that is inaccessible to userspace. However, on kernels
configured without support for domains, such a pte *is* accessible to
the kernel and can be read via get_user, allowing tasks to read
PROT_NONE pages via syscalls such as read/write over a pipe.

This patch introduces a new software pte flag, L_PTE_NONE, that is set
to identify faulting, present entries.

Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm/include/asm/pgtable-2level.h
arch/arm/include/asm/pgtable-3level.h
arch/arm/include/asm/pgtable.h
arch/arm/mm/proc-macros.S
arch/arm/mm/proc-v7-2level.S
arch/arm/mm/proc-v7-3level.S