diff options
author | Catalin Marinas <catalin.marinas@arm.com> | 2024-03-12 20:00:20 +0000 |
---|---|---|
committer | Catalin Marinas <catalin.marinas@arm.com> | 2024-03-13 10:53:20 +0000 |
commit | 69ebc0182406541f0be0f086cdfff13ac56e7385 (patch) | |
tree | 30d949dc857a11ebd5ebd5920b49cbc46edd65f6 /arch/arm64/Kconfig | |
parent | f1bbc4e9cfa4c0f29883171e9d01c01cbe94becc (diff) | |
download | lwn-69ebc0182406541f0be0f086cdfff13ac56e7385.tar.gz lwn-69ebc0182406541f0be0f086cdfff13ac56e7385.zip |
Revert "arm64: mm: add support for WXN memory translation attribute"
This reverts commit 50e3ed0f93f4f62ed2aa83de5db6cb84ecdd5707.
The SCTLR_EL1.WXN control forces execute-never when a page has write
permissions. While the idea of hardening such write/exec combinations is
good, with permissions indirection enabled (FEAT_PIE) this control
becomes RES0. FEAT_PIE introduces a slightly different form of WXN which
only has an effect when the base permission is RWX and the write is
toggled by the permission overlay (FEAT_POE, not yet supported by the
arm64 kernel). Revert the patch for now.
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/ZfGESD3a91lxH367@arm.com
Diffstat (limited to 'arch/arm64/Kconfig')
-rw-r--r-- | arch/arm64/Kconfig | 11 |
1 files changed, 0 insertions, 11 deletions
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig index 24dfd87fab93..4869265ace2d 100644 --- a/arch/arm64/Kconfig +++ b/arch/arm64/Kconfig @@ -1606,17 +1606,6 @@ config RODATA_FULL_DEFAULT_ENABLED This requires the linear region to be mapped down to pages, which may adversely affect performance in some cases. -config ARM64_WXN - bool "Enable WXN attribute so all writable mappings are non-exec" - help - Set the WXN bit in the SCTLR system register so that all writable - mappings are treated as if the PXN/UXN bit is set as well. - If this is set to Y, it can still be disabled at runtime by - passing 'arm64.nowxn' on the kernel command line. - - This should only be set if no software needs to be supported that - relies on being able to execute from writable mappings. - config ARM64_SW_TTBR0_PAN bool "Emulate Privileged Access Never using TTBR0_EL1 switching" help |