GNU Linux-libre 5.10.217-gnu1
[releases.git] / arch / sh / Kconfig.debug
1 # SPDX-License-Identifier: GPL-2.0
2
3 config TRACE_IRQFLAGS_SUPPORT
4         def_bool y
5
6 config SH_STANDARD_BIOS
7         bool "Use LinuxSH standard BIOS"
8         help
9           Say Y here if your target has the gdb-sh-stub
10           package from www.m17n.org (or any conforming standard LinuxSH BIOS)
11           in FLASH or EPROM.  The kernel will use standard BIOS calls during
12           boot for various housekeeping tasks (including calls to read and
13           write characters to a system console, get a MAC address from an
14           on-board Ethernet interface, and shut down the hardware).  Note this
15           does not work with machines with an existing operating system in
16           mask ROM and no flash (WindowsCE machines fall in this category).
17           If unsure, say N.
18
19 config STACK_DEBUG
20         bool "Check for stack overflows"
21         depends on DEBUG_KERNEL && PRINTK
22         help
23           This option will cause messages to be printed if free stack space
24           drops below a certain limit. Saying Y here will add overhead to
25           every function call and will therefore incur a major
26           performance hit. Most users should say N.
27
28 config EARLY_PRINTK
29         bool "Early printk"
30         depends on SH_STANDARD_BIOS
31         help
32           Say Y here to redirect kernel printk messages to the serial port
33           used by the SH-IPL bootloader, starting very early in the boot
34           process and ending when the kernel's serial console is initialised.
35           This option is only useful while porting the kernel to a new machine,
36           when the kernel may crash or hang before the serial console is
37           initialised.  If unsure, say N.
38
39 config 4KSTACKS
40         bool "Use 4Kb for kernel stacks instead of 8Kb"
41         depends on DEBUG_KERNEL && (MMU || BROKEN) && !PAGE_SIZE_64KB
42         help
43           If you say Y here the kernel will use a 4Kb stacksize for the
44           kernel stack attached to each process/thread. This facilitates
45           running more threads on a system and also reduces the pressure
46           on the VM subsystem for higher order allocations. This option
47           will also use IRQ stacks to compensate for the reduced stackspace.
48
49 config IRQSTACKS
50         bool "Use separate kernel stacks when processing interrupts"
51         depends on DEBUG_KERNEL && BROKEN
52         help
53           If you say Y here the kernel will use separate kernel stacks
54           for handling hard and soft interrupts.  This can help avoid
55           overflowing the process kernel stacks.
56
57 config DUMP_CODE
58         bool "Show disassembly of nearby code in register dumps"
59         depends on DEBUG_KERNEL
60         default y if DEBUG_BUGVERBOSE
61         default n
62         help
63           This prints out a code trace of the instructions leading up to
64           the faulting instruction as a debugging aid. As this does grow
65           the kernel in size a bit, most users will want to say N here.
66
67           Those looking for more verbose debugging output should say Y.
68
69 config DWARF_UNWINDER
70         bool "Enable the DWARF unwinder for stacktraces"
71         depends on DEBUG_KERNEL
72         select FRAME_POINTER
73         default n
74         help
75           Enabling this option will make stacktraces more accurate, at
76           the cost of an increase in overall kernel size.
77
78 config SH_NO_BSS_INIT
79         bool "Avoid zeroing BSS (to speed-up startup on suitable platforms)"
80         depends on DEBUG_KERNEL
81         default n
82         help
83           If running in painfully slow environments, such as an RTL
84           simulation or from remote memory via SHdebug, where the memory
85           can already be guaranteed to ber zeroed on boot, say Y.
86
87           For all other cases, say N. If this option seems perplexing, or
88           you aren't sure, say N.
89
90 config MCOUNT
91         def_bool y
92         depends on STACK_DEBUG || FUNCTION_TRACER