qed: move chain initialization inlines next to allocation functions
[linux-2.6-microblaze.git] / lib / Kconfig.debug
index 21d9c5f..9ad9210 100644 (file)
@@ -99,6 +99,7 @@ config DYNAMIC_DEBUG
        default n
        depends on PRINTK
        depends on (DEBUG_FS || PROC_FS)
+       select DYNAMIC_DEBUG_CORE
        help
 
          Compiles debug level messages into the kernel, which would not
@@ -165,6 +166,17 @@ config DYNAMIC_DEBUG
          See Documentation/admin-guide/dynamic-debug-howto.rst for additional
          information.
 
+config DYNAMIC_DEBUG_CORE
+       bool "Enable core function of dynamic debug support"
+       depends on PRINTK
+       depends on (DEBUG_FS || PROC_FS)
+       help
+         Enable core functional support of dynamic debug. It is useful
+         when you want to tie dynamic debug to your kernel modules with
+         DYNAMIC_DEBUG_MODULE defined for each of them, especially for
+         the case of embedded system where the kernel image size is
+         sensitive for people.
+
 config SYMBOLIC_ERRNAME
        bool "Support symbolic error names in printf"
        default y if PRINTK
@@ -213,6 +225,22 @@ config DEBUG_INFO_REDUCED
          DEBUG_INFO build and compile times are reduced too.
          Only works with newer gcc versions.
 
+config DEBUG_INFO_COMPRESSED
+       bool "Compressed debugging information"
+       depends on DEBUG_INFO
+       depends on $(cc-option,-gz=zlib)
+       depends on $(ld-option,--compress-debug-sections=zlib)
+       help
+         Compress the debug information using zlib.  Requires GCC 5.0+ or Clang
+         5.0+, binutils 2.26+, and zlib.
+
+         Users of dpkg-deb via scripts/package/builddeb may find an increase in
+         size of their debug .deb packages with this config set, due to the
+         debug info being compressed with zlib, then the object files being
+         recompressed with a different compression scheme. But this is still
+         preferable to setting $KDEB_COMPRESS to "none" which would be even
+         larger.
+
 config DEBUG_INFO_SPLIT
        bool "Produce split debuginfo in .dwo files"
        depends on DEBUG_INFO
@@ -369,6 +397,11 @@ config STACK_VALIDATION
          For more information, see
          tools/objtool/Documentation/stack-validation.txt.
 
+config VMLINUX_VALIDATION
+       bool
+       depends on STACK_VALIDATION && DEBUG_ENTRY && !PARAVIRT
+       default y
+
 config DEBUG_FORCE_WEAK_PER_CPU
        bool "Force weak per-cpu definitions"
        depends on DEBUG_KERNEL
@@ -653,6 +686,12 @@ config SCHED_STACK_END_CHECK
          data corruption or a sporadic crash at a later stage once the region
          is examined. The runtime overhead introduced is minimal.
 
+config ARCH_HAS_DEBUG_VM_PGTABLE
+       bool
+       help
+         An architecture should select this when it can successfully
+         build and run DEBUG_VM_PGTABLE.
+
 config DEBUG_VM
        bool "Debug VM"
        depends on DEBUG_KERNEL
@@ -688,6 +727,22 @@ config DEBUG_VM_PGFLAGS
 
          If unsure, say N.
 
+config DEBUG_VM_PGTABLE
+       bool "Debug arch page table for semantics compliance"
+       depends on MMU
+       depends on ARCH_HAS_DEBUG_VM_PGTABLE
+       default y if DEBUG_VM
+       help
+         This option provides a debug method which can be used to test
+         architecture page table helper functions on various platforms in
+         verifying if they comply with expected generic MM semantics. This
+         will help architecture code in making sure that any changes or
+         new additions of these helpers still conform to expected
+         semantics of the generic MM. Platforms will have to opt in for
+         this through ARCH_HAS_DEBUG_VM_PGTABLE.
+
+         If unsure, say N.
+
 config ARCH_HAS_DEBUG_VIRTUAL
        bool
 
@@ -766,7 +821,7 @@ config HAVE_DEBUG_STACKOVERFLOW
 config DEBUG_STACKOVERFLOW
        bool "Check for stack overflows"
        depends on DEBUG_KERNEL && HAVE_DEBUG_STACKOVERFLOW
-       ---help---
+       help
          Say Y here if you want to check for overflows of kernel, IRQ
          and exception stacks (if your architecture uses them). This
          option will show detailed messages if free stack space drops
@@ -1510,10 +1565,12 @@ config PROVIDE_OHCI1394_DMA_INIT
          This code (~1k) is freed after boot. By then, the firewire stack
          in charge of the OHCI-1394 controllers should be used instead.
 
-         See Documentation/debugging-via-ohci1394.txt for more information.
+         See Documentation/core-api/debugging-via-ohci1394.rst for more information.
 
 source "samples/Kconfig"
 
+source "lib/Kconfig.kcsan"
+
 config ARCH_HAS_DEVMEM_IS_ALLOWED
        bool
 
@@ -1769,6 +1826,15 @@ config KCOV_INSTRUMENT_ALL
          filesystem fuzzing with AFL) then you will want to enable coverage
          for more specific subsets of files, and should say n here.
 
+config KCOV_IRQ_AREA_SIZE
+       hex "Size of interrupt coverage collection area in words"
+       depends on KCOV
+       default 0x40000
+       help
+         KCOV uses preallocated per-cpu areas to collect coverage from
+         soft interrupts. This specifies the size of those areas in the
+         number of unsigned long words.
+
 menuconfig RUNTIME_TESTING_MENU
        bool "Runtime Testing"
        def_bool y
@@ -1889,7 +1955,7 @@ config ASYNC_RAID6_TEST
        tristate "Self test for hardware accelerated raid6 recovery"
        depends on ASYNC_RAID6_RECOV
        select ASYNC_MEMCPY
-       ---help---
+       help
          This is a one-shot self test that permutes through the
          recovery of all the possible two disk failure scenarios for a
          N-disk array.  Recovery is performed with the asynchronous
@@ -1986,6 +2052,19 @@ config TEST_LKM
 
          If unsure, say N.
 
+config TEST_BITOPS
+       tristate "Test module for compilation of bitops operations"
+       depends on m
+       help
+         This builds the "test_bitops" module that is much like the
+         TEST_LKM module except that it does a basic exercise of the
+         set/clear_bit macros and get_count_order/long to make sure there are
+         no compiler warnings from C=1 sparse checker or -Wextra
+         compilations. It has no dependencies and doesn't run or load unless
+         explicitly requested by name.  for example: modprobe test_bitops.
+
+         If unsure, say N.
+
 config TEST_VMALLOC
        tristate "Test module for stress/performance analysis of vmalloc allocator"
        default n
@@ -2064,8 +2143,9 @@ config TEST_SYSCTL
          If unsure, say N.
 
 config SYSCTL_KUNIT_TEST
-       tristate "KUnit test for sysctl"
+       tristate "KUnit test for sysctl" if !KUNIT_ALL_TESTS
        depends on KUNIT
+       default KUNIT_ALL_TESTS
        help
          This builds the proc sysctl unit test, which runs on boot.
          Tests the API contract and implementation correctness of sysctl.
@@ -2075,8 +2155,9 @@ config SYSCTL_KUNIT_TEST
          If unsure, say N.
 
 config LIST_KUNIT_TEST
-       tristate "KUnit Test for Kernel Linked-list structures"
+       tristate "KUnit Test for Kernel Linked-list structures" if !KUNIT_ALL_TESTS
        depends on KUNIT
+       default KUNIT_ALL_TESTS
        help
          This builds the linked list KUnit test suite.
          It tests that the API and basic functionality of the list_head type
@@ -2092,6 +2173,18 @@ config LIST_KUNIT_TEST
 
          If unsure, say N.
 
+config LINEAR_RANGES_TEST
+       tristate "KUnit test for linear_ranges"
+       depends on KUNIT
+       select LINEAR_RANGES
+       help
+         This builds the linear_ranges unit test, which runs on boot.
+         Tests the linear_ranges logic correctness.
+         For more information on KUnit and unit tests in general please refer
+         to the KUnit documentation in Documentation/dev-tools/kunit/.
+
+         If unsure, say N.
+
 config TEST_UDELAY
        tristate "udelay test driver"
        help
@@ -2201,11 +2294,24 @@ config TEST_MEMINIT
 
          If unsure, say N.
 
+config TEST_HMM
+       tristate "Test HMM (Heterogeneous Memory Management)"
+       depends on TRANSPARENT_HUGEPAGE
+       depends on DEVICE_PRIVATE
+       select HMM_MIRROR
+       select MMU_NOTIFIER
+       help
+         This is a pseudo device driver solely for testing HMM.
+         Say M here if you want to build the HMM test module.
+         Doing so will allow you to run tools/testing/selftest/vm/hmm-tests.
+
+         If unsure, say N.
+
 endif # RUNTIME_TESTING_MENU
 
 config MEMTEST
        bool "Memtest"
-       ---help---
+       help
          This option adds a kernel parameter 'memtest', which allows memtest
          to be set.
                memtest=0, mean disabled; -- default