Merge tag 'riscv/for-v5.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv...
[sfrench/cifs-2.6.git] / arch / arm64 / Kconfig
index 56c6d5f30e2b02e48a199d472283867fbfa35d49..3adcec05b1f672d7ff3356e0eaf13d2667a64b6a 100644 (file)
@@ -24,8 +24,10 @@ config ARM64
        select ARCH_HAS_KCOV
        select ARCH_HAS_KEEPINITRD
        select ARCH_HAS_MEMBARRIER_SYNC_CORE
+       select ARCH_HAS_PTE_DEVMAP
        select ARCH_HAS_PTE_SPECIAL
        select ARCH_HAS_SETUP_DMA_OPS
+       select ARCH_HAS_SET_DIRECT_MAP
        select ARCH_HAS_SET_MEMORY
        select ARCH_HAS_STRICT_KERNEL_RWX
        select ARCH_HAS_STRICT_MODULE_RWX
@@ -108,6 +110,8 @@ config ARM64
        select GENERIC_STRNCPY_FROM_USER
        select GENERIC_STRNLEN_USER
        select GENERIC_TIME_VSYSCALL
+       select GENERIC_GETTIMEOFDAY
+       select GENERIC_COMPAT_VDSO if (!CPU_BIG_ENDIAN && COMPAT)
        select HANDLE_DOMAIN_IRQ
        select HARDIRQS_SW_RESEND
        select HAVE_PCI
@@ -141,6 +145,7 @@ config ARM64
        select HAVE_DMA_CONTIGUOUS
        select HAVE_DYNAMIC_FTRACE
        select HAVE_EFFICIENT_UNALIGNED_ACCESS
+       select HAVE_FAST_GUP
        select HAVE_FTRACE_MCOUNT_RECORD
        select HAVE_FUNCTION_TRACER
        select HAVE_FUNCTION_GRAPH_TRACER
@@ -161,6 +166,7 @@ config ARM64
        select HAVE_SYSCALL_TRACEPOINTS
        select HAVE_KPROBES
        select HAVE_KRETPROBES
+       select HAVE_GENERIC_VDSO
        select IOMMU_DMA if IOMMU_SUPPORT
        select IRQ_DOMAIN
        select IRQ_FORCED_THREADING
@@ -261,10 +267,8 @@ config GENERIC_CALIBRATE_DELAY
        def_bool y
 
 config ZONE_DMA32
-       def_bool y
-
-config HAVE_GENERIC_GUP
-       def_bool y
+       bool "Support DMA32 zone" if EXPERT
+       default y
 
 config ARCH_ENABLE_MEMORY_HOTPLUG
        def_bool y
@@ -933,7 +937,6 @@ config PARAVIRT
 config PARAVIRT_TIME_ACCOUNTING
        bool "Paravirtual steal time accounting"
        select PARAVIRT
-       default n
        help
          Select this option to enable fine granularity task steal time
          accounting. Time spent executing other tasks in parallel with
@@ -994,7 +997,7 @@ config CRASH_DUMP
          reserved region and then later executed after a crash by
          kdump/kexec.
 
-         For more details see Documentation/kdump/kdump.txt
+         For more details see Documentation/admin-guide/kdump/kdump.rst
 
 config XEN_DOM0
        def_bool y
@@ -1140,7 +1143,7 @@ config KUSER_HELPERS
          the system. This permits binaries to be run on ARMv4 through
          to ARMv8 without modification.
 
-         See Documentation/arm/kernel_user_helpers.txt for details.
+         See Documentation/arm/kernel_user_helpers.rst for details.
 
          However, the fixed address nature of these helpers can be used
          by ROP (return orientated programming) authors when creating
@@ -1418,12 +1421,27 @@ config ARM64_SVE
          KVM in the same kernel image.
 
 config ARM64_MODULE_PLTS
-       bool
+       bool "Use PLTs to allow module memory to spill over into vmalloc area"
+       depends on MODULES
        select HAVE_MOD_ARCH_SPECIFIC
+       help
+         Allocate PLTs when loading modules so that jumps and calls whose
+         targets are too far away for their relative offsets to be encoded
+         in the instructions themselves can be bounced via veneers in the
+         module's PLT. This allows modules to be allocated in the generic
+         vmalloc area after the dedicated module memory area has been
+         exhausted.
+
+         When running with address space randomization (KASLR), the module
+         region itself may be too far away for ordinary relative jumps and
+         calls, and so in that case, module PLTs are required and cannot be
+         disabled.
+
+         Specific errata workaround(s) might also force module PLTs to be
+         enabled (ARM64_ERRATUM_843419).
 
 config ARM64_PSEUDO_NMI
        bool "Support for NMI-like interrupts"
-       depends on BROKEN # 1556553607-46531-1-git-send-email-julien.thierry@arm.com
        select CONFIG_ARM_GIC_V3
        help
          Adds support for mimicking Non-Maskable Interrupts through the use of
@@ -1436,6 +1454,17 @@ config ARM64_PSEUDO_NMI
 
          If unsure, say N
 
+if ARM64_PSEUDO_NMI
+config ARM64_DEBUG_PRIORITY_MASKING
+       bool "Debug interrupt priority masking"
+       help
+         This adds runtime checks to functions enabling/disabling
+         interrupts when using priority masking. The additional checks verify
+         the validity of ICC_PMR_EL1 when calling concerned functions.
+
+         If unsure, say N
+endif
+
 config RELOCATABLE
        bool
        help