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