]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blobdiff - lib/Kconfig.debug
objtool: Add CONFIG_STACK_VALIDATION option
[mirror_ubuntu-artful-kernel.git] / lib / Kconfig.debug
index ecb9e75614bf87f1e368074d6ef84bfe3f1003b8..855265621863d8503653fd6d7472511e5d64b8e2 100644 (file)
@@ -342,6 +342,18 @@ config FRAME_POINTER
          larger and slower, but it gives very useful debugging information
          in case of kernel bugs. (precise oopses/stacktraces/warnings)
 
+config STACK_VALIDATION
+       bool "Compile-time stack metadata validation"
+       depends on HAVE_STACK_VALIDATION
+       default n
+       help
+         Add compile-time checks to validate stack metadata, including frame
+         pointers (if CONFIG_FRAME_POINTER is enabled).  This helps ensure
+         that runtime stack traces are more reliable.
+
+         For more information, see
+         tools/objtool/Documentation/stack-validation.txt.
+
 config DEBUG_FORCE_WEAK_PER_CPU
        bool "Force weak per-cpu definitions"
        depends on DEBUG_KERNEL
@@ -1400,6 +1412,21 @@ config RCU_EQS_DEBUG
 
 endmenu # "RCU Debugging"
 
+config DEBUG_WQ_FORCE_RR_CPU
+       bool "Force round-robin CPU selection for unbound work items"
+       depends on DEBUG_KERNEL
+       default n
+       help
+         Workqueue used to implicitly guarantee that work items queued
+         without explicit CPU specified are put on the local CPU.  This
+         guarantee is no longer true and while local CPU is still
+         preferred work items may be put on foreign CPUs.  Kernel
+         parameter "workqueue.debug_force_rr_cpu" is added to force
+         round-robin CPU selection to flush out usages which depend on the
+         now broken guarantee.  This config option enables the debug
+         feature by default.  When enabled, memory and cache locality will
+         be impacted.
+
 config DEBUG_BLOCK_EXT_DEVT
         bool "Force extended block device numbers and spread them"
        depends on DEBUG_KERNEL