mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-23 09:19:51 +00:00
![Paul Mundt](/assets/img/avatar_default.png)
Presently there's no SHmedia support plugged in for the dwarf unwinder. While it's trivial to provide an SHmedia version of dwarf_read_arch_reg(), the general sh64 case is more complicated in that the TLB miss handler uses a locked down set of registers for optimization (including the frame pointer) which we need for the unwind table generation. While freeing up the frame pointer for use in the TLB miss handler is reasonably straightforward, it's still more trouble than it's worth, so we simply restrict the unwinder to 32-bit for now. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
91 lines
3.1 KiB
Text
91 lines
3.1 KiB
Text
menu "Kernel hacking"
|
|
|
|
config TRACE_IRQFLAGS_SUPPORT
|
|
def_bool y
|
|
|
|
source "lib/Kconfig.debug"
|
|
|
|
config SH_STANDARD_BIOS
|
|
bool "Use LinuxSH standard BIOS"
|
|
depends on SUPERH32
|
|
help
|
|
Say Y here if your target has the gdb-sh-stub
|
|
package from www.m17n.org (or any conforming standard LinuxSH BIOS)
|
|
in FLASH or EPROM. The kernel will use standard BIOS calls during
|
|
boot for various housekeeping tasks (including calls to read and
|
|
write characters to a system console, get a MAC address from an
|
|
on-board Ethernet interface, and shut down the hardware). Note this
|
|
does not work with machines with an existing operating system in
|
|
mask ROM and no flash (WindowsCE machines fall in this category).
|
|
If unsure, say N.
|
|
|
|
config STACK_DEBUG
|
|
bool "Check for stack overflows"
|
|
depends on DEBUG_KERNEL && SUPERH32
|
|
help
|
|
This option will cause messages to be printed if free stack space
|
|
drops below a certain limit. Saying Y here will add overhead to
|
|
every function call and will therefore incur a major
|
|
performance hit. Most users should say N.
|
|
|
|
config 4KSTACKS
|
|
bool "Use 4Kb for kernel stacks instead of 8Kb"
|
|
depends on DEBUG_KERNEL && (MMU || BROKEN) && !PAGE_SIZE_64KB
|
|
help
|
|
If you say Y here the kernel will use a 4Kb stacksize for the
|
|
kernel stack attached to each process/thread. This facilitates
|
|
running more threads on a system and also reduces the pressure
|
|
on the VM subsystem for higher order allocations. This option
|
|
will also use IRQ stacks to compensate for the reduced stackspace.
|
|
|
|
config IRQSTACKS
|
|
bool "Use separate kernel stacks when processing interrupts"
|
|
depends on DEBUG_KERNEL && SUPERH32 && BROKEN
|
|
help
|
|
If you say Y here the kernel will use separate kernel stacks
|
|
for handling hard and soft interrupts. This can help avoid
|
|
overflowing the process kernel stacks.
|
|
|
|
config DUMP_CODE
|
|
bool "Show disassembly of nearby code in register dumps"
|
|
depends on DEBUG_KERNEL && SUPERH32
|
|
default y if DEBUG_BUGVERBOSE
|
|
default n
|
|
help
|
|
This prints out a code trace of the instructions leading up to
|
|
the faulting instruction as a debugging aid. As this does grow
|
|
the kernel in size a bit, most users will want to say N here.
|
|
|
|
Those looking for more verbose debugging output should say Y.
|
|
|
|
config DWARF_UNWINDER
|
|
bool "Enable the DWARF unwinder for stacktraces"
|
|
select FRAME_POINTER
|
|
depends on SUPERH32
|
|
default n
|
|
help
|
|
Enabling this option will make stacktraces more accurate, at
|
|
the cost of an increase in overall kernel size.
|
|
|
|
config SH_NO_BSS_INIT
|
|
bool "Avoid zeroing BSS (to speed-up startup on suitable platforms)"
|
|
depends on DEBUG_KERNEL
|
|
default n
|
|
help
|
|
If running in painfully slow environments, such as an RTL
|
|
simulation or from remote memory via SHdebug, where the memory
|
|
can already be guaranteed to ber zeroed on boot, say Y.
|
|
|
|
For all other cases, say N. If this option seems perplexing, or
|
|
you aren't sure, say N.
|
|
|
|
config SH64_SR_WATCH
|
|
bool "Debug: set SR.WATCH to enable hardware watchpoints and trace"
|
|
depends on SUPERH64
|
|
|
|
config MCOUNT
|
|
def_bool y
|
|
depends on SUPERH32
|
|
depends on STACK_DEBUG || FUNCTION_TRACER
|
|
|
|
endmenu
|