arm64: Distinguish between user and kernel XN bits
authorCatalin Marinas <catalin.marinas@arm.com>
Thu, 15 Nov 2012 17:21:16 +0000 (17:21 +0000)
committerCatalin Marinas <catalin.marinas@arm.com>
Fri, 16 Nov 2012 15:50:25 +0000 (15:50 +0000)
commit8e620b0476696e9428442d3551f3dad47df0e28f
tree259e48a52e0d3725b3f77167b6195066fe26d455
parent77b67063bb6bce6d475e910d3b886a606d0d91f7
arm64: Distinguish between user and kernel XN bits

On AArch64, the meaning of the XN bit has changed to UXN (user). The PXN
(privileged) bit must be set to prevent kernel execution. Without the
PXN bit set, the CPU may speculatively access device memory. This patch
ensures that all the mappings that the kernel must not execute from
(including user mappings) have the PXN bit set.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm64/include/asm/io.h
arch/arm64/include/asm/pgtable-hwdef.h
arch/arm64/include/asm/pgtable.h