summaryrefslogtreecommitdiffstats
path: root/arch/arm64/Kconfig
diff options
context:
space:
mode:
authorYu Zhao2019-03-12 01:57:49 +0100
committerWill Deacon2019-04-09 12:21:50 +0200
commit54c8d9119ec85de48fd0707946a5e57df9ad7acf (patch)
treebb63c0e6365016782e0d0646a6ad9e004ed88fc5 /arch/arm64/Kconfig
parentKVM: ARM: Remove pgtable page standard functions from stage-2 page tables (diff)
downloadkernel-qcow2-linux-54c8d9119ec85de48fd0707946a5e57df9ad7acf.tar.gz
kernel-qcow2-linux-54c8d9119ec85de48fd0707946a5e57df9ad7acf.tar.xz
kernel-qcow2-linux-54c8d9119ec85de48fd0707946a5e57df9ad7acf.zip
arm64: mm: enable per pmd page table lock
Switch from per mm_struct to per pmd page table lock by enabling ARCH_ENABLE_SPLIT_PMD_PTLOCK. This provides better granularity for large system. I'm not sure if there is contention on mm->page_table_lock. Given the option comes at no cost (apart from initializing more spin locks), why not enable it now. We only do so when pmd is not folded, so we don't mistakenly call pgtable_pmd_page_ctor() on pud or p4d in pgd_pgtable_alloc(). Signed-off-by: Yu Zhao <yuzhao@google.com> Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'arch/arm64/Kconfig')
-rw-r--r--arch/arm64/Kconfig3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 7e34b9eba5de..555af5035592 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -889,6 +889,9 @@ config ARCH_WANT_HUGE_PMD_SHARE
config ARCH_HAS_CACHE_LINE_SIZE
def_bool y
+config ARCH_ENABLE_SPLIT_PMD_PTLOCK
+ def_bool y if PGTABLE_LEVELS > 2
+
config SECCOMP
bool "Enable seccomp to safely compute untrusted bytecode"
---help---