3 source "lib/Kconfig.debug"
6 tristate "Crash dump support (EXPERIMENTAL)"
7 depends on EXPERIMENTAL
10 Say Y here to enable saving an image of system memory when a panic
11 or other error occurs. Dumps can also be forced with the SysRq+d
12 key if MAGIC_SYSRQ is enabled.
14 config CRASH_DUMP_BLOCKDEV
15 tristate "Crash dump block device driver"
18 Say Y to allow saving crash dumps directly to a disk device.
20 config CRASH_DUMP_NETDEV
21 tristate "Crash dump network device driver"
24 Say Y to allow saving crash dumps over a network device.
26 config CRASH_DUMP_MEMDEV
27 bool "Crash dump staged memory driver"
30 Say Y to allow intermediate saving crash dumps in spare
31 memory pages which would then be written out to disk
34 config CRASH_DUMP_SOFTBOOT
35 bool "Save crash dump across a soft reboot"
36 depends on CRASH_DUMP_MEMDEV
38 Say Y to allow a crash dump to be preserved in memory
39 pages across a soft reboot and written out to disk
40 thereafter. For this to work, CRASH_DUMP must be
41 configured as part of the kernel (not as a module).
43 config CRASH_DUMP_COMPRESS_RLE
44 tristate "Crash dump RLE compression"
47 Say Y to allow saving dumps with Run Length Encoding compression.
49 config CRASH_DUMP_COMPRESS_GZIP
50 tristate "Crash dump GZIP compression"
55 Say Y to allow saving dumps with Gnu Zip compression.
58 bool "Early printk" if EMBEDDED
61 Write kernel log output directly into the VGA buffer or to a serial
64 This is useful for kernel debugging when your machine crashes very
65 early before the console code is initialized. For normal operation
66 it is not recommended because it looks ugly and doesn't cooperate
67 with klogd/syslogd or the X server. You should normally N here,
68 unless you want to debug such a crash.
70 config X86_FIND_SMP_CONFIG
72 depends on X86_LOCAL_APIC || X86_VOYAGER
77 depends on X86_LOCAL_APIC && !X86_VISWS
81 bool "Early printk" if EMBEDDED
84 Write kernel log output directly into the VGA buffer or to a serial
87 This is useful for kernel debugging when your machine crashes very
88 early before the console code is initialized. For normal operation
89 it is not recommended because it looks ugly and doesn't cooperate
90 with klogd/syslogd or the X server. You should normally N here,
91 unless you want to debug such a crash.
95 depends on DEBUG_KERNEL
97 Kprobes allows you to trap at almost any kernel address and
98 execute a callback function. register_kprobe() establishes
99 a probepoint and specifies the callback. Kprobes is useful
100 for kernel debugging, non-intrusive instrumentation and testing.
101 If in doubt, say "N".
103 config DEBUG_PAGEALLOC
104 bool "Page alloc debugging"
105 depends on DEBUG_KERNEL
107 Unmap pages from the kernel linear mapping after free_pages().
108 This results in a large slowdown, but helps to find certain types
109 of memory corruptions.
111 config DEBUG_STACKOVERFLOW
112 bool "Check for stack overflows"
113 depends on DEBUG_KERNEL
115 config DEBUG_STACK_USAGE
116 bool "Stack utilization instrumentation"
117 depends on DEBUG_KERNEL
119 Enables the display of the minimum amount of free stack which each
120 task has ever had available in the sysrq-T and sysrq-P debug output.
122 This option will slow down process creation somewhat.
125 bool "Use separate IRQ stacks"
127 This option subsumes the IRQ stack implementation of the orig. 4KSTACK
128 support. You must use this if you select 4KB stacks!
130 config STACK_SIZE_SHIFT
131 int "Kernel stack size (12 => 4KB, 13 => 8KB, 14 => 16KB)"
133 default 12 if IRQSTACKS
136 Select kernel stack size. 4KB stacks are best as they let
137 the system scale further. Use 8KB stacks if you have an
138 experimental kernel where a stack overlow with a 4KB stack
139 might occur. Use 16KB stacks if you want to safely support
140 Windows device drivers using either Linuxant or ndiswrapper.
143 int "Print stack trace when stack grows beyond specified bytes"
144 default 4096 if IRQSTACKS
147 The kernel will print a stack trace when the current stack exceeds
150 config X86_STACK_CHECK
151 bool "Check for stack overflows"
154 Say Y here to have the kernel attempt to detect when the per-task
155 kernel stack overflows.
157 Some older versions of gcc don't handle the -p option correctly.
158 Kernprof is affected by the same problem, which is described here:
159 http://oss.sgi.com/projects/kernprof/faq.html#Q9
161 Basically, if you get oopses in __free_pages_ok during boot when
162 you have this turned on, you need to fix gcc. The Redhat 2.96
163 version and gcc-3.x seem to work.
165 If not debugging a stack overflow problem, say N
168 int "Panic when stack approaches with specified bytes of the stack limit"
169 depends on X86_STACK_CHECK
170 default 512 if IRQSTACKS
173 Panic if the stack grows to within specified byte range.
175 config DEBUG_PAGEALLOC
176 bool "Page alloc debugging"
177 depends on DEBUG_KERNEL
179 Unmap pages from the kernel linear mapping after free_pages().
180 This results in a large slowdown, but helps to find certain types
181 of memory corruptions.
184 bool "Collect scheduler statistics"
185 depends on DEBUG_KERNEL && PROC_FS
187 If you say Y here, additional code will be inserted into the
188 scheduler and related routines to collect statistics about
189 scheduler behavior and provide them in /proc/schedstat. These
190 stats may be useful for both tuning and debugging the scheduler
191 If you aren't debugging the scheduler or trying to tune a specific
192 application, you can say N to avoid the very slight overhead
195 config X86_FIND_SMP_CONFIG
197 depends on X86_LOCAL_APIC || X86_VOYAGER
202 depends on X86_LOCAL_APIC && !X86_VISWS