diff options
Diffstat (limited to 'lib/Kconfig.debug')
| -rw-r--r-- | lib/Kconfig.debug | 38 |
1 files changed, 30 insertions, 8 deletions
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug index 80598cfd728c..a314e663d517 100644 --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug | |||
| @@ -9,15 +9,9 @@ config PRINTK_TIME | |||
| 9 | in kernel startup. | 9 | in kernel startup. |
| 10 | 10 | ||
| 11 | 11 | ||
| 12 | config DEBUG_KERNEL | ||
| 13 | bool "Kernel debugging" | ||
| 14 | help | ||
| 15 | Say Y here if you are developing drivers or trying to debug and | ||
| 16 | identify kernel problems. | ||
| 17 | |||
| 18 | config MAGIC_SYSRQ | 12 | config MAGIC_SYSRQ |
| 19 | bool "Magic SysRq key" | 13 | bool "Magic SysRq key" |
| 20 | depends on DEBUG_KERNEL && !UML | 14 | depends on !UML |
| 21 | help | 15 | help |
| 22 | If you say Y here, you will have some control over the system even | 16 | If you say Y here, you will have some control over the system even |
| 23 | if the system crashes for example during kernel debugging (e.g., you | 17 | if the system crashes for example during kernel debugging (e.g., you |
| @@ -29,6 +23,12 @@ config MAGIC_SYSRQ | |||
| 29 | keys are documented in <file:Documentation/sysrq.txt>. Don't say Y | 23 | keys are documented in <file:Documentation/sysrq.txt>. Don't say Y |
| 30 | unless you really know what this hack does. | 24 | unless you really know what this hack does. |
| 31 | 25 | ||
| 26 | config DEBUG_KERNEL | ||
| 27 | bool "Kernel debugging" | ||
| 28 | help | ||
| 29 | Say Y here if you are developing drivers or trying to debug and | ||
| 30 | identify kernel problems. | ||
| 31 | |||
| 32 | config LOG_BUF_SHIFT | 32 | config LOG_BUF_SHIFT |
| 33 | int "Kernel log buffer size (16 => 64KB, 17 => 128KB)" if DEBUG_KERNEL | 33 | int "Kernel log buffer size (16 => 64KB, 17 => 128KB)" if DEBUG_KERNEL |
| 34 | range 12 21 | 34 | range 12 21 |
| @@ -79,7 +79,7 @@ config SCHEDSTATS | |||
| 79 | 79 | ||
| 80 | config DEBUG_SLAB | 80 | config DEBUG_SLAB |
| 81 | bool "Debug memory allocations" | 81 | bool "Debug memory allocations" |
| 82 | depends on DEBUG_KERNEL | 82 | depends on DEBUG_KERNEL && SLAB |
| 83 | help | 83 | help |
| 84 | Say Y here to have the kernel do limited verification on memory | 84 | Say Y here to have the kernel do limited verification on memory |
| 85 | allocation as well as poisoning memory on free to catch use of freed | 85 | allocation as well as poisoning memory on free to catch use of freed |
| @@ -95,6 +95,14 @@ config DEBUG_PREEMPT | |||
| 95 | if kernel code uses it in a preemption-unsafe way. Also, the kernel | 95 | if kernel code uses it in a preemption-unsafe way. Also, the kernel |
| 96 | will detect preemption count underflows. | 96 | will detect preemption count underflows. |
| 97 | 97 | ||
| 98 | config DEBUG_MUTEXES | ||
| 99 | bool "Mutex debugging, deadlock detection" | ||
| 100 | default y | ||
| 101 | depends on DEBUG_KERNEL | ||
| 102 | help | ||
| 103 | This allows mutex semantics violations and mutex related deadlocks | ||
| 104 | (lockups) to be detected and reported automatically. | ||
| 105 | |||
| 98 | config DEBUG_SPINLOCK | 106 | config DEBUG_SPINLOCK |
| 99 | bool "Spinlock debugging" | 107 | bool "Spinlock debugging" |
| 100 | depends on DEBUG_KERNEL | 108 | depends on DEBUG_KERNEL |
| @@ -187,6 +195,20 @@ config FRAME_POINTER | |||
| 187 | some architectures or if you use external debuggers. | 195 | some architectures or if you use external debuggers. |
| 188 | If you don't debug the kernel, you can say N. | 196 | If you don't debug the kernel, you can say N. |
| 189 | 197 | ||
| 198 | config FORCED_INLINING | ||
| 199 | bool "Force gcc to inline functions marked 'inline'" | ||
| 200 | depends on DEBUG_KERNEL | ||
| 201 | default y | ||
| 202 | help | ||
| 203 | This option determines if the kernel forces gcc to inline the functions | ||
| 204 | developers have marked 'inline'. Doing so takes away freedom from gcc to | ||
| 205 | do what it thinks is best, which is desirable for the gcc 3.x series of | ||
| 206 | compilers. The gcc 4.x series have a rewritten inlining algorithm and | ||
| 207 | disabling this option will generate a smaller kernel there. Hopefully | ||
| 208 | this algorithm is so good that allowing gcc4 to make the decision can | ||
| 209 | become the default in the future, until then this option is there to | ||
| 210 | test gcc for this. | ||
| 211 | |||
| 190 | config RCU_TORTURE_TEST | 212 | config RCU_TORTURE_TEST |
| 191 | tristate "torture tests for RCU" | 213 | tristate "torture tests for RCU" |
| 192 | depends on DEBUG_KERNEL | 214 | depends on DEBUG_KERNEL |
