diff options
Diffstat (limited to 'lib/Kconfig.debug')
| -rw-r--r-- | lib/Kconfig.debug | 83 |
1 files changed, 66 insertions, 17 deletions
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug index 7a638aa3545b..a28590083622 100644 --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug | |||
| @@ -15,7 +15,7 @@ config PRINTK_TIME | |||
| 15 | The behavior is also controlled by the kernel command line | 15 | The behavior is also controlled by the kernel command line |
| 16 | parameter printk.time=1. See Documentation/kernel-parameters.txt | 16 | parameter printk.time=1. See Documentation/kernel-parameters.txt |
| 17 | 17 | ||
| 18 | config DEFAULT_MESSAGE_LOGLEVEL | 18 | config MESSAGE_LOGLEVEL_DEFAULT |
| 19 | int "Default message log level (1-7)" | 19 | int "Default message log level (1-7)" |
| 20 | range 1 7 | 20 | range 1 7 |
| 21 | default "4" | 21 | default "4" |
| @@ -143,6 +143,30 @@ config DEBUG_INFO_REDUCED | |||
| 143 | DEBUG_INFO build and compile times are reduced too. | 143 | DEBUG_INFO build and compile times are reduced too. |
| 144 | Only works with newer gcc versions. | 144 | Only works with newer gcc versions. |
| 145 | 145 | ||
| 146 | config DEBUG_INFO_SPLIT | ||
| 147 | bool "Produce split debuginfo in .dwo files" | ||
| 148 | depends on DEBUG_INFO | ||
| 149 | help | ||
| 150 | Generate debug info into separate .dwo files. This significantly | ||
| 151 | reduces the build directory size for builds with DEBUG_INFO, | ||
| 152 | because it stores the information only once on disk in .dwo | ||
| 153 | files instead of multiple times in object files and executables. | ||
| 154 | In addition the debug information is also compressed. | ||
| 155 | |||
| 156 | Requires recent gcc (4.7+) and recent gdb/binutils. | ||
| 157 | Any tool that packages or reads debug information would need | ||
| 158 | to know about the .dwo files and include them. | ||
| 159 | Incompatible with older versions of ccache. | ||
| 160 | |||
| 161 | config DEBUG_INFO_DWARF4 | ||
| 162 | bool "Generate dwarf4 debuginfo" | ||
| 163 | depends on DEBUG_INFO | ||
| 164 | help | ||
| 165 | Generate dwarf4 debug info. This requires recent versions | ||
| 166 | of gcc and gdb. It makes the debug information larger. | ||
| 167 | But it significantly improves the success of resolving | ||
| 168 | variables in gdb on optimized code. | ||
| 169 | |||
| 146 | config ENABLE_WARN_DEPRECATED | 170 | config ENABLE_WARN_DEPRECATED |
| 147 | bool "Enable __deprecated logic" | 171 | bool "Enable __deprecated logic" |
| 148 | default y | 172 | default y |
| @@ -835,7 +859,7 @@ config DEBUG_RT_MUTEXES | |||
| 835 | 859 | ||
| 836 | config RT_MUTEX_TESTER | 860 | config RT_MUTEX_TESTER |
| 837 | bool "Built-in scriptable tester for rt-mutexes" | 861 | bool "Built-in scriptable tester for rt-mutexes" |
| 838 | depends on DEBUG_KERNEL && RT_MUTEXES | 862 | depends on DEBUG_KERNEL && RT_MUTEXES && BROKEN |
| 839 | help | 863 | help |
| 840 | This option enables a rt-mutex tester. | 864 | This option enables a rt-mutex tester. |
| 841 | 865 | ||
| @@ -868,6 +892,10 @@ config DEBUG_WW_MUTEX_SLOWPATH | |||
| 868 | the full mutex checks enabled with (CONFIG_PROVE_LOCKING) this | 892 | the full mutex checks enabled with (CONFIG_PROVE_LOCKING) this |
| 869 | will test all possible w/w mutex interface abuse with the | 893 | will test all possible w/w mutex interface abuse with the |
| 870 | exception of simply not acquiring all the required locks. | 894 | exception of simply not acquiring all the required locks. |
| 895 | Note that this feature can introduce significant overhead, so | ||
| 896 | it really should not be enabled in a production or distro kernel, | ||
| 897 | even a debug kernel. If you are a driver writer, enable it. If | ||
| 898 | you are a distro, do not. | ||
| 871 | 899 | ||
| 872 | config DEBUG_LOCK_ALLOC | 900 | config DEBUG_LOCK_ALLOC |
| 873 | bool "Lock debugging: detect incorrect freeing of live locks" | 901 | bool "Lock debugging: detect incorrect freeing of live locks" |
| @@ -1008,8 +1036,13 @@ config TRACE_IRQFLAGS | |||
| 1008 | either tracing or lock debugging. | 1036 | either tracing or lock debugging. |
| 1009 | 1037 | ||
| 1010 | config STACKTRACE | 1038 | config STACKTRACE |
| 1011 | bool | 1039 | bool "Stack backtrace support" |
| 1012 | depends on STACKTRACE_SUPPORT | 1040 | depends on STACKTRACE_SUPPORT |
| 1041 | help | ||
| 1042 | This option causes the kernel to create a /proc/pid/stack for | ||
| 1043 | every process, showing its current stack trace. | ||
| 1044 | It is also used by various kernel debugging features that require | ||
| 1045 | stack trace generation. | ||
| 1013 | 1046 | ||
| 1014 | config DEBUG_KOBJECT | 1047 | config DEBUG_KOBJECT |
| 1015 | bool "kobject debugging" | 1048 | bool "kobject debugging" |
| @@ -1131,20 +1164,6 @@ config PROVE_RCU_REPEATEDLY | |||
| 1131 | 1164 | ||
| 1132 | Say N if you are unsure. | 1165 | Say N if you are unsure. |
| 1133 | 1166 | ||
| 1134 | config PROVE_RCU_DELAY | ||
| 1135 | bool "RCU debugging: preemptible RCU race provocation" | ||
| 1136 | depends on DEBUG_KERNEL && PREEMPT_RCU | ||
| 1137 | default n | ||
| 1138 | help | ||
| 1139 | There is a class of races that involve an unlikely preemption | ||
| 1140 | of __rcu_read_unlock() just after ->rcu_read_lock_nesting has | ||
| 1141 | been set to INT_MIN. This feature inserts a delay at that | ||
| 1142 | point to increase the probability of these races. | ||
| 1143 | |||
| 1144 | Say Y to increase probability of preemption of __rcu_read_unlock(). | ||
| 1145 | |||
| 1146 | Say N if you are unsure. | ||
| 1147 | |||
| 1148 | config SPARSE_RCU_POINTER | 1167 | config SPARSE_RCU_POINTER |
| 1149 | bool "RCU debugging: sparse-based checks for pointer usage" | 1168 | bool "RCU debugging: sparse-based checks for pointer usage" |
| 1150 | default n | 1169 | default n |
| @@ -1550,6 +1569,14 @@ config TEST_STRING_HELPERS | |||
| 1550 | config TEST_KSTRTOX | 1569 | config TEST_KSTRTOX |
| 1551 | tristate "Test kstrto*() family of functions at runtime" | 1570 | tristate "Test kstrto*() family of functions at runtime" |
| 1552 | 1571 | ||
| 1572 | config TEST_RHASHTABLE | ||
| 1573 | bool "Perform selftest on resizable hash table" | ||
| 1574 | default n | ||
| 1575 | help | ||
| 1576 | Enable this option to test the rhashtable functions at boot. | ||
| 1577 | |||
| 1578 | If unsure, say N. | ||
| 1579 | |||
| 1553 | endmenu # runtime tests | 1580 | endmenu # runtime tests |
| 1554 | 1581 | ||
| 1555 | config PROVIDE_OHCI1394_DMA_INIT | 1582 | config PROVIDE_OHCI1394_DMA_INIT |
| @@ -1649,6 +1676,28 @@ config TEST_BPF | |||
| 1649 | 1676 | ||
| 1650 | If unsure, say N. | 1677 | If unsure, say N. |
| 1651 | 1678 | ||
| 1679 | config TEST_FIRMWARE | ||
| 1680 | tristate "Test firmware loading via userspace interface" | ||
| 1681 | default n | ||
| 1682 | depends on FW_LOADER | ||
| 1683 | help | ||
| 1684 | This builds the "test_firmware" module that creates a userspace | ||
| 1685 | interface for testing firmware loading. This can be used to | ||
| 1686 | control the triggering of firmware loading without needing an | ||
| 1687 | actual firmware-using device. The contents can be rechecked by | ||
| 1688 | userspace. | ||
| 1689 | |||
| 1690 | If unsure, say N. | ||
| 1691 | |||
| 1692 | config TEST_UDELAY | ||
| 1693 | tristate "udelay test driver" | ||
| 1694 | default n | ||
| 1695 | help | ||
| 1696 | This builds the "udelay_test" module that helps to make sure | ||
| 1697 | that udelay() is working properly. | ||
| 1698 | |||
| 1699 | If unsure, say N. | ||
| 1700 | |||
| 1652 | source "samples/Kconfig" | 1701 | source "samples/Kconfig" |
| 1653 | 1702 | ||
| 1654 | source "lib/Kconfig.kgdb" | 1703 | source "lib/Kconfig.kgdb" |
