2005-09-26 16:04:21 +10:00
menu "Kernel hacking"
source "lib/Kconfig.debug"
2005-10-10 22:15:52 +10:00
config DEBUG_STACKOVERFLOW
bool "Check for stack overflows"
2007-01-30 00:45:56 -06:00
depends on DEBUG_KERNEL
2005-10-10 22:15:52 +10:00
help
This option will cause messages to be printed if free stack space
drops below a certain limit.
config DEBUG_STACK_USAGE
bool "Stack utilization instrumentation"
2007-01-30 00:45:56 -06:00
depends on DEBUG_KERNEL
2005-10-10 22:15:52 +10:00
help
Enables the display of the minimum amount of free stack which each
task has ever had available in the sysrq-T and sysrq-P debug output.
This option will slow down process creation somewhat.
2007-04-12 15:30:22 +10:00
config DEBUG_PAGEALLOC
bool "Debug page memory allocations"
2007-07-29 23:24:36 +02:00
depends on DEBUG_KERNEL && !HIBERNATION
2007-04-12 15:30:22 +10:00
help
Unmap pages from the kernel linear mapping after free_pages().
This results in a large slowdown, but helps to find certain types
of memory corruptions.
2006-09-06 16:23:12 -07:00
config HCALL_STATS
bool "Hypervisor call instrumentation"
depends on PPC_PSERIES && DEBUG_FS
help
Adds code to keep track of the number of hypervisor calls made and
2007-05-09 07:12:20 +02:00
the amount of time spent in hypervisor calls. Wall time spent in
2006-09-06 16:23:12 -07:00
each call is always calculated, and if available CPU cycles spent
are also calculated. A directory named hcall_inst is added at the
root of the debugfs filesystem. Within the hcall_inst directory
are files that contain CPU specific call statistics.
This option will add a small amount of overhead to all hypervisor
calls.
2005-10-10 22:15:52 +10:00
config DEBUGGER
bool "Enable debugger hooks"
depends on DEBUG_KERNEL
help
Include in-kernel hooks for kernel debuggers. Unless you are
intending to debug the kernel, say N here.
2005-09-26 16:04:21 +10:00
config KGDB
bool "Include kgdb kernel debugger"
2005-10-10 22:15:52 +10:00
depends on DEBUGGER && (BROKEN || PPC_GEN550 || 4xx)
2005-09-26 16:04:21 +10:00
select DEBUG_INFO
help
Include in-kernel hooks for kgdb, the Linux kernel source level
debugger. See <http://kgdb.sourceforge.net/> for more information.
Unless you are intending to debug the kernel, say N here.
choice
prompt "Serial Port"
depends on KGDB
default KGDB_TTYS1
config KGDB_TTYS0
bool "ttyS0"
config KGDB_TTYS1
bool "ttyS1"
config KGDB_TTYS2
bool "ttyS2"
config KGDB_TTYS3
bool "ttyS3"
endchoice
config KGDB_CONSOLE
bool "Enable serial console thru kgdb port"
depends on KGDB && 8xx || CPM2
help
If you enable this, all serial console messages will be sent
over the gdb stub.
If unsure, say N.
config XMON
bool "Include xmon kernel debugger"
2006-11-30 11:44:09 +11:00
depends on DEBUGGER
2005-09-26 16:04:21 +10:00
help
Include in-kernel hooks for the xmon kernel monitor/debugger.
Unless you are intending to debug the kernel, say N here.
2005-10-10 22:15:52 +10:00
Make sure to enable also CONFIG_BOOTX_TEXT on Macs. Otherwise
nothing will appear on the screen (xmon writes directly to the
framebuffer memory).
The cmdline option 'xmon' or 'xmon=early' will drop into xmon
very early during boot. 'xmon=on' will just enable the xmon
debugger hooks. 'xmon=off' will disable the debugger hooks
if CONFIG_XMON_DEFAULT is set.
2006-09-08 16:29:21 +02:00
xmon will print a backtrace on the very first invocation.
'xmon=nobt' will disable this autobacktrace.
2005-10-10 22:15:52 +10:00
config XMON_DEFAULT
bool "Enable xmon by default"
depends on XMON
help
xmon is normally disabled unless booted with 'xmon=on'.
Use 'xmon=off' to disable xmon init during runtime.
2006-11-23 00:46:45 +01:00
config XMON_DISASSEMBLY
bool "Include disassembly support in xmon"
depends on XMON
default y
help
Include support for disassembling in xmon. You probably want
to say Y here, unless you're building for a memory-constrained
system.
2005-10-10 22:15:52 +10:00
config IRQSTACKS
bool "Use separate kernel stacks when processing interrupts"
depends on PPC64
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.
2005-09-26 16:04:21 +10:00
2007-08-28 18:47:57 +10:00
config VIRQ_DEBUG
bool "Expose hardware/virtual IRQ mapping via debugfs"
depends on DEBUG_FS && PPC_MERGE
help
This option will show the mapping relationship between hardware irq
numbers and virtual irq numbers. The mapping is exposed via debugfs
in the file powerpc/virq_mapping.
If you don't know what this means you don't need it.
2005-09-26 16:04:21 +10:00
config BDI_SWITCH
bool "Include BDI-2000 user context switcher"
2005-10-10 22:15:52 +10:00
depends on DEBUG_KERNEL && PPC32
2005-09-26 16:04:21 +10:00
help
Include in-kernel support for the Abatron BDI2000 debugger.
Unless you are intending to debug the kernel with one of these
machines, say N here.
config BOOTX_TEXT
bool "Support for early boot text console (BootX or OpenFirmware only)"
2007-07-26 00:43:36 -05:00
depends PPC_OF && PPC_MULTIPLATFORM
2005-09-26 16:04:21 +10:00
help
Say Y here to see progress messages from the boot firmware in text
mode. Requires either BootX or Open Firmware.
2006-05-09 16:03:51 +10:00
config PPC_EARLY_DEBUG
bool "Early debugging (dangerous)"
2006-01-11 11:54:09 +11:00
choice
2006-05-09 16:03:51 +10:00
prompt "Early debugging console"
depends on PPC_EARLY_DEBUG
2006-01-11 11:54:09 +11:00
help
2006-05-09 16:03:51 +10:00
Use the selected console for early debugging. Careful, if you
enable debugging for the wrong type of machine your kernel
_will not boot_.
2006-01-11 11:54:09 +11:00
config PPC_EARLY_DEBUG_LPAR
bool "LPAR HV Console"
depends on PPC_PSERIES
help
Select this to enable early debugging for a machine with a HVC
console on vterm 0.
config PPC_EARLY_DEBUG_G5
bool "Apple G5"
depends on PPC_PMAC64
help
Select this to enable early debugging for Apple G5 machines.
2006-06-23 18:20:16 +10:00
config PPC_EARLY_DEBUG_RTAS_PANEL
2006-01-11 11:54:09 +11:00
bool "RTAS Panel"
depends on PPC_RTAS
help
Select this to enable early debugging via the RTAS panel.
2006-06-23 18:20:16 +10:00
config PPC_EARLY_DEBUG_RTAS_CONSOLE
bool "RTAS Console"
depends on PPC_RTAS
select UDBG_RTAS_CONSOLE
help
Select this to enable early debugging via the RTAS console.
2006-01-11 11:54:09 +11:00
config PPC_EARLY_DEBUG_MAPLE
bool "Maple real mode"
depends on PPC_MAPLE
help
Select this to enable early debugging for Maple.
config PPC_EARLY_DEBUG_ISERIES
bool "iSeries HV Console"
depends on PPC_ISERIES
help
Select this to enable early debugging for legacy iSeries. You need
to hit "Ctrl-x Ctrl-x" to see the messages on the console.
2007-02-04 16:36:49 -06:00
config PPC_EARLY_DEBUG_PAS_REALMODE
bool "PA Semi real mode"
depends on PPC_PASEMI
help
Select this to enable early debugging for PA Semi.
Output will be on UART0.
2007-02-02 16:47:17 +09:00
config PPC_EARLY_DEBUG_BEAT
bool "Beat HV Console"
depends on PPC_CELLEB
select PPC_UDBG_BEAT
help
Select this to enable early debugging for Celleb with Beat.
2007-05-08 12:59:31 +10:00
config PPC_EARLY_DEBUG_44x
bool "Early serial debugging for IBM/AMCC 44x CPUs"
depends on 44x
select PPC_UDBG_16550
help
Select this to enable early debugging for IBM 44x chips via the
inbuilt serial port.
2006-01-11 11:54:09 +11:00
endchoice
2007-05-08 12:59:31 +10:00
config PPC_EARLY_DEBUG_44x_PHYSLOW
hex "Low 32 bits of early debug UART physical address"
depends PPC_EARLY_DEBUG_44x
default "0x40000200"
config PPC_EARLY_DEBUG_44x_PHYSHIGH
hex "EPRN of early debug UART physical address"
depends PPC_EARLY_DEBUG_44x
default "0x1"
2005-09-26 16:04:21 +10:00
endmenu