Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7285f410 authored by Catalin Marinas's avatar Catalin Marinas Committed by Sami Tolvanen
Browse files

UPSTREAM: arm64: Enable CONFIG_ARM64_SW_TTBR0_PAN



This patch adds the Kconfig option to enable support for TTBR0 PAN
emulation. The option is default off because of a slight performance hit
when enabled, caused by the additional TTBR0_EL1 switching during user
access operations or exception entry/exit code.

Cc: Will Deacon <will.deacon@arm.com>
Cc: James Morse <james.morse@arm.com>
Cc: Kees Cook <keescook@chromium.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>

Bug: 31432001
Change-Id: I9cf4d13b1f11d17c28adddb433eb896e765701f3
(cherry picked from commit ba42822af1c287f038aa550f3578c61c212a892e)
Signed-off-by: default avatarSami Tolvanen <samitolvanen@google.com>
parent fd6b8730
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -790,6 +790,14 @@ config SETEND_EMULATION
	  If unsure, say Y
endif

config ARM64_SW_TTBR0_PAN
	bool "Emulate Privileged Access Never using TTBR0_EL1 switching"
	help
	  Enabling this option prevents the kernel from accessing
	  user-space memory directly by pointing TTBR0_EL1 to a reserved
	  zeroed area and reserved ASID. The user access routines
	  restore the valid TTBR0_EL1 temporarily.

menu "ARMv8.1 architectural features"

config ARM64_HW_AFDBM