]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/blobdiff - arch/Kconfig
context-tracking: Introduce CONFIG_HAVE_TIF_NOHZ
[mirror_ubuntu-jammy-kernel.git] / arch / Kconfig
index 48b5e103bdb00d4fd928ca90ed94aa5ea420d847..dbf420a9f87b9f9f64c05e21106aaf65a401f857 100644 (file)
@@ -393,18 +393,23 @@ config HAVE_ARCH_JUMP_LABEL
 config HAVE_ARCH_JUMP_LABEL_RELATIVE
        bool
 
-config HAVE_RCU_TABLE_FREE
+config MMU_GATHER_TABLE_FREE
        bool
 
-config HAVE_RCU_TABLE_NO_INVALIDATE
+config MMU_GATHER_RCU_TABLE_FREE
        bool
+       select MMU_GATHER_TABLE_FREE
 
-config HAVE_MMU_GATHER_PAGE_SIZE
+config MMU_GATHER_PAGE_SIZE
        bool
 
-config HAVE_MMU_GATHER_NO_GATHER
+config MMU_GATHER_NO_RANGE
        bool
 
+config MMU_GATHER_NO_GATHER
+       bool
+       depends on MMU_GATHER_TABLE_FREE
+
 config ARCH_HAVE_NMI_SAFE_CMPXCHG
        bool
 
@@ -535,11 +540,17 @@ config HAVE_CONTEXT_TRACKING
        help
          Provide kernel/user boundaries probes necessary for subsystems
          that need it, such as userspace RCU extended quiescent state.
-         Syscalls need to be wrapped inside user_exit()-user_enter() through
-         the slow path using TIF_NOHZ flag. Exceptions handlers must be
-         wrapped as well. Irqs are already protected inside
-         rcu_irq_enter/rcu_irq_exit() but preemption or signal handling on
-         irq exit still need to be protected.
+         Syscalls need to be wrapped inside user_exit()-user_enter(), either
+         optimized behind static key or through the slow path using TIF_NOHZ
+         flag. Exceptions handlers must be wrapped as well. Irqs are already
+         protected inside rcu_irq_enter/rcu_irq_exit() but preemption or signal
+         handling on irq exit still need to be protected.
+
+config HAVE_TIF_NOHZ
+       bool
+       help
+         Arch relies on TIF_NOHZ and syscall slow path to implement context
+         tracking calls to user_enter()/user_exit().
 
 config HAVE_VIRT_CPU_ACCOUNTING
        bool