forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-02-20 ea08eeccae9297f7aabd2ef7f0c2517ac4549acc
kernel/arch/x86/Kconfig.debug
....@@ -3,13 +3,16 @@
33 config TRACE_IRQFLAGS_SUPPORT
44 def_bool y
55
6
+config TRACE_IRQFLAGS_NMI_SUPPORT
7
+ def_bool y
8
+
69 config EARLY_PRINTK_USB
710 bool
811
912 config X86_VERBOSE_BOOTUP
1013 bool "Enable verbose x86 bootup info messages"
1114 default y
12
- ---help---
15
+ help
1316 Enables the informational output from the decompression stage
1417 (e.g. bzImage) of the boot. If you disable this you will still
1518 see errors. Disable this if you want silent bootup.
....@@ -17,7 +20,7 @@
1720 config EARLY_PRINTK
1821 bool "Early printk" if EXPERT
1922 default y
20
- ---help---
23
+ help
2124 Write kernel log output directly into the VGA buffer or to a serial
2225 port.
2326
....@@ -31,7 +34,7 @@
3134 bool "Early printk via EHCI debug port"
3235 depends on EARLY_PRINTK && PCI
3336 select EARLY_PRINTK_USB
34
- ---help---
37
+ help
3538 Write kernel log output directly into the EHCI debug port.
3639
3740 This is useful for kernel debugging when your machine crashes very
....@@ -40,21 +43,11 @@
4043 with klogd/syslogd or the X server. You should normally say N here,
4144 unless you want to debug such a crash. You need usb debug device.
4245
43
-config EARLY_PRINTK_EFI
44
- bool "Early printk via the EFI framebuffer"
45
- depends on EFI && EARLY_PRINTK
46
- select FONT_SUPPORT
47
- ---help---
48
- Write kernel log output directly into the EFI framebuffer.
49
-
50
- This is useful for kernel debugging when your machine crashes very
51
- early before the console code is initialized.
52
-
5346 config EARLY_PRINTK_USB_XDBC
5447 bool "Early printk via the xHCI debug port"
5548 depends on EARLY_PRINTK && PCI
5649 select EARLY_PRINTK_USB
57
- ---help---
50
+ help
5851 Write kernel log output directly into the xHCI debug port.
5952
6053 One use for this feature is kernel debugging, for example when your
....@@ -69,75 +62,23 @@
6962 You should normally say N here, unless you want to debug early
7063 crashes or need a very simple printk logging facility.
7164
72
-config MCSAFE_TEST
65
+config COPY_MC_TEST
7366 def_bool n
74
-
75
-config X86_PTDUMP_CORE
76
- def_bool n
77
-
78
-config X86_PTDUMP
79
- tristate "Export kernel pagetable layout to userspace via debugfs"
80
- depends on DEBUG_KERNEL
81
- select DEBUG_FS
82
- select X86_PTDUMP_CORE
83
- ---help---
84
- Say Y here if you want to show the kernel pagetable layout in a
85
- debugfs file. This information is only useful for kernel developers
86
- who are working in architecture specific areas of the kernel.
87
- It is probably not a good idea to enable this feature in a production
88
- kernel.
89
- If in doubt, say "N"
9067
9168 config EFI_PGT_DUMP
9269 bool "Dump the EFI pagetable"
9370 depends on EFI
94
- select X86_PTDUMP_CORE
95
- ---help---
71
+ select PTDUMP_CORE
72
+ help
9673 Enable this if you want to dump the EFI page table before
9774 enabling virtual mode. This can be used to debug miscellaneous
9875 issues with the mapping of the EFI runtime regions into that
9976 table.
10077
101
-config DEBUG_WX
102
- bool "Warn on W+X mappings at boot"
103
- select X86_PTDUMP_CORE
104
- ---help---
105
- Generate a warning if any W+X mappings are found at boot.
106
-
107
- This is useful for discovering cases where the kernel is leaving
108
- W+X mappings after applying NX, as such mappings are a security risk.
109
-
110
- Look for a message in dmesg output like this:
111
-
112
- x86/mm: Checked W+X mappings: passed, no W+X pages found.
113
-
114
- or like this, if the check failed:
115
-
116
- x86/mm: Checked W+X mappings: FAILED, <N> W+X pages found.
117
-
118
- Note that even if the check fails, your kernel is possibly
119
- still fine, as W+X mappings are not a security hole in
120
- themselves, what they do is that they make the exploitation
121
- of other unfixed kernel bugs easier.
122
-
123
- There is no runtime or memory usage effect of this option
124
- once the kernel has booted up - it's a one time check.
125
-
126
- If in doubt, say "Y".
127
-
128
-config DOUBLEFAULT
129
- default y
130
- bool "Enable doublefault exception handler" if EXPERT
131
- ---help---
132
- This option allows trapping of rare doublefault exceptions that
133
- would otherwise cause a system to silently reboot. Disabling this
134
- option saves about 4k and might cause you much additional grey
135
- hair.
136
-
13778 config DEBUG_TLBFLUSH
13879 bool "Set upper limit of TLB entries to flush one-by-one"
13980 depends on DEBUG_KERNEL
140
- ---help---
81
+ help
14182
14283 X86-only for now.
14384
....@@ -157,7 +98,7 @@
15798 bool "Enable IOMMU debugging"
15899 depends on GART_IOMMU && DEBUG_KERNEL
159100 depends on X86_64
160
- ---help---
101
+ help
161102 Force the IOMMU to on even when you have less than 4GB of
162103 memory and add debugging code. On overflow always panic. And
163104 allow to enable IOMMU leak tracing. Can be disabled at boot
....@@ -166,13 +107,13 @@
166107 code. When you use it make sure you have a big enough
167108 IOMMU/AGP aperture. Most of the options enabled by this can
168109 be set more finegrained using the iommu= command line
169
- options. See Documentation/x86/x86_64/boot-options.txt for more
110
+ options. See Documentation/x86/x86_64/boot-options.rst for more
170111 details.
171112
172113 config IOMMU_LEAK
173114 bool "IOMMU leak tracing"
174115 depends on IOMMU_DEBUG && DMA_API_DEBUG
175
- ---help---
116
+ help
176117 Add a simple leak tracer to the IOMMU code. This is useful when you
177118 are debugging a buggy device driver that leaks IOMMU mappings.
178119
....@@ -183,31 +124,11 @@
183124 bool "x86 instruction decoder selftest"
184125 depends on DEBUG_KERNEL && INSTRUCTION_DECODER
185126 depends on !COMPILE_TEST
186
- ---help---
127
+ help
187128 Perform x86 instruction decoder selftests at build time.
188129 This option is useful for checking the sanity of x86 instruction
189130 decoder code.
190131 If unsure, say "N".
191
-
192
-#
193
-# IO delay types:
194
-#
195
-
196
-config IO_DELAY_TYPE_0X80
197
- int
198
- default "0"
199
-
200
-config IO_DELAY_TYPE_0XED
201
- int
202
- default "1"
203
-
204
-config IO_DELAY_TYPE_UDELAY
205
- int
206
- default "2"
207
-
208
-config IO_DELAY_TYPE_NONE
209
- int
210
- default "3"
211132
212133 choice
213134 prompt "IO delay type"
....@@ -215,85 +136,47 @@
215136
216137 config IO_DELAY_0X80
217138 bool "port 0x80 based port-IO delay [recommended]"
218
- ---help---
139
+ help
219140 This is the traditional Linux IO delay used for in/out_p.
220141 It is the most tested hence safest selection here.
221142
222143 config IO_DELAY_0XED
223144 bool "port 0xed based port-IO delay"
224
- ---help---
145
+ help
225146 Use port 0xed as the IO delay. This frees up port 0x80 which is
226147 often used as a hardware-debug port.
227148
228149 config IO_DELAY_UDELAY
229150 bool "udelay based port-IO delay"
230
- ---help---
151
+ help
231152 Use udelay(2) as the IO delay method. This provides the delay
232153 while not having any side-effect on the IO port space.
233154
234155 config IO_DELAY_NONE
235156 bool "no port-IO delay"
236
- ---help---
157
+ help
237158 No port-IO delay. Will break on old boxes that require port-IO
238159 delay for certain operations. Should work on most new machines.
239160
240161 endchoice
241162
242
-if IO_DELAY_0X80
243
-config DEFAULT_IO_DELAY_TYPE
244
- int
245
- default IO_DELAY_TYPE_0X80
246
-endif
247
-
248
-if IO_DELAY_0XED
249
-config DEFAULT_IO_DELAY_TYPE
250
- int
251
- default IO_DELAY_TYPE_0XED
252
-endif
253
-
254
-if IO_DELAY_UDELAY
255
-config DEFAULT_IO_DELAY_TYPE
256
- int
257
- default IO_DELAY_TYPE_UDELAY
258
-endif
259
-
260
-if IO_DELAY_NONE
261
-config DEFAULT_IO_DELAY_TYPE
262
- int
263
- default IO_DELAY_TYPE_NONE
264
-endif
265
-
266163 config DEBUG_BOOT_PARAMS
267164 bool "Debug boot parameters"
268165 depends on DEBUG_KERNEL
269166 depends on DEBUG_FS
270
- ---help---
167
+ help
271168 This option will cause struct boot_params to be exported via debugfs.
272169
273170 config CPA_DEBUG
274171 bool "CPA self-test code"
275172 depends on DEBUG_KERNEL
276
- ---help---
173
+ help
277174 Do change_page_attr() self-tests every 30 seconds.
278
-
279
-config OPTIMIZE_INLINING
280
- bool "Allow gcc to uninline functions marked 'inline'"
281
- ---help---
282
- This option determines if the kernel forces gcc to inline the functions
283
- developers have marked 'inline'. Doing so takes away freedom from gcc to
284
- do what it thinks is best, which is desirable for the gcc 3.x series of
285
- compilers. The gcc 4.x series have a rewritten inlining algorithm and
286
- enabling this option will generate a smaller kernel there. Hopefully
287
- this algorithm is so good that allowing gcc 4.x and above to make the
288
- decision will become the default in the future. Until then this option
289
- is there to test gcc for this.
290
-
291
- If unsure, say N.
292175
293176 config DEBUG_ENTRY
294177 bool "Debug low-level entry code"
295178 depends on DEBUG_KERNEL
296
- ---help---
179
+ help
297180 This option enables sanity checks in x86's low-level entry code.
298181 Some of these sanity checks may slow down kernel entries and
299182 exits or otherwise impact performance.
....@@ -303,7 +186,7 @@
303186 config DEBUG_NMI_SELFTEST
304187 bool "NMI Selftest"
305188 depends on DEBUG_KERNEL && X86_LOCAL_APIC
306
- ---help---
189
+ help
307190 Enabling this option turns on a quick NMI selftest to verify
308191 that the NMI behaves correctly.
309192
....@@ -314,9 +197,8 @@
314197
315198 config DEBUG_IMR_SELFTEST
316199 bool "Isolated Memory Region self test"
317
- default n
318200 depends on INTEL_IMR
319
- ---help---
201
+ help
320202 This option enables automated sanity testing of the IMR code.
321203 Some simple tests are run to verify IMR bounds checking, alignment
322204 and overlapping. This option is really only useful if you are
....@@ -329,7 +211,7 @@
329211 bool "Debug the x86 FPU code"
330212 depends on DEBUG_KERNEL
331213 default y
332
- ---help---
214
+ help
333215 If this option is enabled then there will be extra sanity
334216 checks and (boot time) debug printouts added to the kernel.
335217 This debugging adds some small amount of runtime overhead
....@@ -342,7 +224,7 @@
342224 depends on PCI
343225 select DEBUG_FS
344226 select IOSF_MBI
345
- ---help---
227
+ help
346228 This is a debug driver, which gets the power states
347229 of all Punit North Complex devices. The power states of
348230 each device is exposed as part of the debugfs interface.
....@@ -353,7 +235,7 @@
353235 prompt "Choose kernel unwinder"
354236 default UNWINDER_ORC if X86_64
355237 default UNWINDER_FRAME_POINTER if X86_32
356
- ---help---
238
+ help
357239 This determines which method will be used for unwinding kernel stack
358240 traces for panics, oopses, bugs, warnings, perf, /proc/<pid>/stack,
359241 livepatch, lockdep, and more.
....@@ -362,7 +244,7 @@
362244 bool "ORC unwinder"
363245 depends on X86_64
364246 select STACK_VALIDATION
365
- ---help---
247
+ help
366248 This option enables the ORC (Oops Rewind Capability) unwinder for
367249 unwinding kernel stack traces. It uses a custom data format which is
368250 a simplified version of the DWARF Call Frame Information standard.
....@@ -377,7 +259,7 @@
377259 config UNWINDER_FRAME_POINTER
378260 bool "Frame pointer unwinder"
379261 select FRAME_POINTER
380
- ---help---
262
+ help
381263 This option enables the frame pointer unwinder for unwinding kernel
382264 stack traces.
383265
....@@ -385,15 +267,11 @@
385267 unwinder, but the kernel text size will grow by ~3% and the kernel's
386268 overall performance will degrade by roughly 5-10%.
387269
388
- This option is recommended if you want to use the livepatch
389
- consistency model, as this is currently the only way to get a
390
- reliable stack trace (CONFIG_HAVE_RELIABLE_STACKTRACE).
391
-
392270 config UNWINDER_GUESS
393271 bool "Guess unwinder"
394272 depends on EXPERT
395273 depends on !STACKDEPOT
396
- ---help---
274
+ help
397275 This option enables the "guess" unwinder for unwinding kernel stack
398276 traces. It scans the stack and reports every kernel text address it
399277 finds. Some of the addresses it reports may be incorrect.