arm64: mm: Add arm64_kernel_unmapped_at_el0 helper
authorWill Deacon <will.deacon@arm.com>
Tue, 14 Nov 2017 13:58:08 +0000 (13:58 +0000)
committerHaibo Chen <haibo.chen@nxp.com>
Thu, 12 Apr 2018 10:46:04 +0000 (18:46 +0800)
commit965cd2dddb6b289eca3d76ccae25922455c64b10
tree2d015b0c28a9b08d557ae768bbc2a80254c9f422
parentac8f21fea6923f4faa16a91bc589379fd85c09f6
arm64: mm: Add arm64_kernel_unmapped_at_el0 helper

commit fc0e1299da54 upstream.

In order for code such as TLB invalidation to operate efficiently when
the decision to map the kernel at EL0 is determined at runtime, this
patch introduces a helper function, arm64_kernel_unmapped_at_el0, to
determine whether or not the kernel is mapped whilst running in userspace.

Currently, this just reports the value of CONFIG_UNMAP_KERNEL_AT_EL0,
but will later be hooked up to a fake CPU capability using a static key.

Reviewed-by: Mark Rutland <mark.rutland@arm.com>
Tested-by: Laura Abbott <labbott@redhat.com>
Tested-by: Shanker Donthineni <shankerd@codeaurora.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Alex Shi <alex.shi@linaro.org>
arch/arm64/include/asm/mmu.h