xref: /linux/arch/sh/Kconfig.debug (revision 0ea5c948cb64bab5bc7a5516774eb8536f05aa0d)
1# SPDX-License-Identifier: GPL-2.0
2
3config 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
16config STACK_DEBUG
17	bool "Check for stack overflows"
18	depends on DEBUG_KERNEL && PRINTK
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
25config EARLY_PRINTK
26	bool "Early printk"
27	depends on SH_STANDARD_BIOS
28	help
29	  Say Y here to redirect kernel printk messages to the serial port
30	  used by the SH-IPL bootloader, starting very early in the boot
31	  process and ending when the kernel's serial console is initialised.
32	  This option is only useful while porting the kernel to a new machine,
33	  when the kernel may crash or hang before the serial console is
34	  initialised.  If unsure, say N.
35
36config 4KSTACKS
37	bool "Use 4Kb for kernel stacks instead of 8Kb"
38	depends on DEBUG_KERNEL && (MMU || BROKEN) && !PAGE_SIZE_64KB
39	help
40	  If you say Y here the kernel will use a 4Kb stacksize for the
41	  kernel stack attached to each process/thread. This facilitates
42	  running more threads on a system and also reduces the pressure
43	  on the VM subsystem for higher order allocations. This option
44	  will also use IRQ stacks to compensate for the reduced stackspace.
45
46config IRQSTACKS
47	bool "Use separate kernel stacks when processing interrupts"
48	depends on DEBUG_KERNEL && BROKEN
49	help
50	  If you say Y here the kernel will use separate kernel stacks
51	  for handling hard and soft interrupts.  This can help avoid
52	  overflowing the process kernel stacks.
53
54config DUMP_CODE
55	bool "Show disassembly of nearby code in register dumps"
56	depends on DEBUG_KERNEL
57	default y if DEBUG_BUGVERBOSE
58	default n
59	help
60	  This prints out a code trace of the instructions leading up to
61	  the faulting instruction as a debugging aid. As this does grow
62	  the kernel in size a bit, most users will want to say N here.
63
64	  Those looking for more verbose debugging output should say Y.
65
66config DWARF_UNWINDER
67	bool "Enable the DWARF unwinder for stacktraces"
68	depends on DEBUG_KERNEL
69	select FRAME_POINTER
70	default n
71	help
72	  Enabling this option will make stacktraces more accurate, at
73	  the cost of an increase in overall kernel size.
74
75config SH_NO_BSS_INIT
76	bool "Avoid zeroing BSS (to speed-up startup on suitable platforms)"
77	depends on DEBUG_KERNEL
78	default n
79	help
80	  If running in painfully slow environments, such as an RTL
81	  simulation or from remote memory via SHdebug, where the memory
82	  can already be guaranteed to ber zeroed on boot, say Y.
83
84	  For all other cases, say N. If this option seems perplexing, or
85	  you aren't sure, say N.
86
87config MCOUNT
88	def_bool y
89	depends on STACK_DEBUG || FUNCTION_TRACER
90