x86: ioremap_nocache fix
[linux-2.6-block.git] / arch / x86 / Kconfig.debug
CommitLineData
1da177e4
LT
1menu "Kernel hacking"
2
55f327fa 3config TRACE_IRQFLAGS_SUPPORT
d013a27c 4 def_bool y
55f327fa 5
1da177e4
LT
6source "lib/Kconfig.debug"
7
8config EARLY_PRINTK
076f9776 9 bool "Early printk" if EMBEDDED
1da177e4
LT
10 default y
11 help
12 Write kernel log output directly into the VGA buffer or to a serial
13 port.
14
15 This is useful for kernel debugging when your machine crashes very
16 early before the console code is initialized. For normal operation
17 it is not recommended because it looks ugly and doesn't cooperate
18 with klogd/syslogd or the X server. You should normally N here,
19 unless you want to debug such a crash.
20
21config DEBUG_STACKOVERFLOW
22 bool "Check for stack overflows"
23 depends on DEBUG_KERNEL
dab175f3
AB
24 help
25 This option will cause messages to be printed if free stack space
26 drops below a certain limit.
1da177e4 27
1da177e4
LT
28config DEBUG_STACK_USAGE
29 bool "Stack utilization instrumentation"
30 depends on DEBUG_KERNEL
31 help
32 Enables the display of the minimum amount of free stack which each
33 task has ever had available in the sysrq-T and sysrq-P debug output.
34
35 This option will slow down process creation somewhat.
36
37comment "Page alloc debug is incompatible with Software Suspend on i386"
b0cb1a19 38 depends on DEBUG_KERNEL && HIBERNATION
d013a27c 39 depends on X86_32
1da177e4
LT
40
41config DEBUG_PAGEALLOC
4a2f0acf 42 bool "Debug page memory allocations"
b0cb1a19 43 depends on DEBUG_KERNEL && !HIBERNATION && !HUGETLBFS
1da177e4
LT
44 help
45 Unmap pages from the kernel linear mapping after free_pages().
46 This results in a large slowdown, but helps to find certain types
47 of memory corruptions.
48
c49a4955 49config DEBUG_PER_CPU_MAPS
50 bool "Debug access to per_cpu maps"
51 depends on DEBUG_KERNEL
52 depends on X86_64_SMP
53 default n
54 help
55 Say Y to verify that the per_cpu map being accessed has
56 been setup. Adds a fair amount of code to kernel memory
57 and decreases performance.
58
59 Say N if unsure.
60
63aaf308
AV
61config DEBUG_RODATA
62 bool "Write protect kernel read-only data structures"
11201e60 63 default y
63aaf308
AV
64 depends on DEBUG_KERNEL
65 help
66 Mark the kernel read-only data as write-protected in the pagetables,
67 in order to catch accidental (and incorrect) writes to such const
11201e60
IM
68 data. This is recommended so that we can catch kernel bugs sooner.
69 If in doubt, say "Y".
63aaf308 70
1da177e4
LT
71config 4KSTACKS
72 bool "Use 4Kb for kernel stacks instead of 8Kb"
73 depends on DEBUG_KERNEL
d013a27c 74 depends on X86_32
1da177e4
LT
75 help
76 If you say Y here the kernel will use a 4Kb stacksize for the
77 kernel stack attached to each process/thread. This facilitates
78 running more threads on a system and also reduces the pressure
79 on the VM subsystem for higher order allocations. This option
80 will also use IRQ stacks to compensate for the reduced stackspace.
81
82config X86_FIND_SMP_CONFIG
d013a27c 83 def_bool y
1da177e4 84 depends on X86_LOCAL_APIC || X86_VOYAGER
d013a27c 85 depends on X86_32
1da177e4
LT
86
87config X86_MPPARSE
d013a27c 88 def_bool y
6b0c3d44 89 depends on (X86_32 && (X86_LOCAL_APIC && !X86_VISWS)) || X86_64
1da177e4 90
102e41fd
AK
91config DOUBLEFAULT
92 default y
93 bool "Enable doublefault exception handler" if EMBEDDED
d013a27c
RD
94 depends on X86_32
95 help
96 This option allows trapping of rare doublefault exceptions that
97 would otherwise cause a system to silently reboot. Disabling this
98 option saves about 4k and might cause you much additional grey
99 hair.
100
101config IOMMU_DEBUG
102 bool "Enable IOMMU debugging"
966396d3 103 depends on GART_IOMMU && DEBUG_KERNEL
d013a27c 104 depends on X86_64
102e41fd 105 help
d013a27c
RD
106 Force the IOMMU to on even when you have less than 4GB of
107 memory and add debugging code. On overflow always panic. And
108 allow to enable IOMMU leak tracing. Can be disabled at boot
109 time with iommu=noforce. This will also enable scatter gather
110 list merging. Currently not recommended for production
111 code. When you use it make sure you have a big enough
112 IOMMU/AGP aperture. Most of the options enabled by this can
113 be set more finegrained using the iommu= command line
114 options. See Documentation/x86_64/boot-options.txt for more
115 details.
116
117config IOMMU_LEAK
118 bool "IOMMU leak tracing"
119 depends on DEBUG_KERNEL
120 depends on IOMMU_DEBUG
121 help
122 Add a simple leak tracer to the IOMMU code. This is useful when you
123 are debugging a buggy device driver that leaks IOMMU mappings.
124
6e7c4025
IM
125#
126# IO delay types:
127#
128
129config IO_DELAY_TYPE_0X80
130 int
131 default "0"
132
133config IO_DELAY_TYPE_0XED
134 int
135 default "1"
136
137config IO_DELAY_TYPE_UDELAY
138 int
139 default "2"
140
141config IO_DELAY_TYPE_NONE
142 int
143 default "3"
144
145choice
146 prompt "IO delay type"
d0049e71 147 default IO_DELAY_0XED
6e7c4025
IM
148
149config IO_DELAY_0X80
150 bool "port 0x80 based port-IO delay [recommended]"
151 help
152 This is the traditional Linux IO delay used for in/out_p.
153 It is the most tested hence safest selection here.
154
155config IO_DELAY_0XED
156 bool "port 0xed based port-IO delay"
157 help
158 Use port 0xed as the IO delay. This frees up port 0x80 which is
159 often used as a hardware-debug port.
160
161config IO_DELAY_UDELAY
162 bool "udelay based port-IO delay"
163 help
164 Use udelay(2) as the IO delay method. This provides the delay
165 while not having any side-effect on the IO port space.
166
167config IO_DELAY_NONE
168 bool "no port-IO delay"
b02aae9c 169 help
6e7c4025
IM
170 No port-IO delay. Will break on old boxes that require port-IO
171 delay for certain operations. Should work on most new machines.
172
173endchoice
174
175if IO_DELAY_0X80
176config DEFAULT_IO_DELAY_TYPE
177 int
178 default IO_DELAY_TYPE_0X80
179endif
180
181if IO_DELAY_0XED
182config DEFAULT_IO_DELAY_TYPE
183 int
184 default IO_DELAY_TYPE_0XED
185endif
186
187if IO_DELAY_UDELAY
188config DEFAULT_IO_DELAY_TYPE
189 int
190 default IO_DELAY_TYPE_UDELAY
191endif
192
193if IO_DELAY_NONE
194config DEFAULT_IO_DELAY_TYPE
195 int
196 default IO_DELAY_TYPE_NONE
197endif
b02aae9c 198
6d7d7433
HY
199config DEBUG_BOOT_PARAMS
200 bool "Debug boot parameters"
201 depends on DEBUG_KERNEL
202 depends on DEBUG_FS
203 help
204 This option will cause struct boot_params to be exported via debugfs.
205
0c42f392
AK
206config CPA_DEBUG
207 bool "CPA self test code"
208 help
209 Do change_page_attr self tests at boot.
210
1da177e4 211endmenu