mirror of
				https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
				synced 2025-10-31 16:38:31 +00:00 
			
		
		
		
	 26c8af5f01
			
		
	
	
		26c8af5f01
		
	
	
	
	
		
			
			xmon does not print a backtrace per default. This is bad on systems with USB keyboard, the most needed info about the crash is lost. print a backtrace during the very first xmon entry. Booting with xmon=nobt disables the autobacktrace functionality. Signed-off-by: Olaf Hering <olaf@aepfle.de> Signed-off-by: Paul Mackerras <paulus@samba.org>
		
			
				
	
	
		
			182 lines
		
	
	
		
			5.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			182 lines
		
	
	
		
			5.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| menu "Kernel hacking"
 | |
| 
 | |
| source "lib/Kconfig.debug"
 | |
| 
 | |
| config DEBUG_STACKOVERFLOW
 | |
| 	bool "Check for stack overflows"
 | |
| 	depends on DEBUG_KERNEL && PPC64
 | |
| 	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"
 | |
| 	depends on DEBUG_KERNEL && PPC64
 | |
| 	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.
 | |
| 
 | |
| 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
 | |
| 	  the amount of time spent in hypervisor callsr.  Wall time spent in
 | |
| 	  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.
 | |
| 
 | |
| 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.
 | |
| 
 | |
| config KGDB
 | |
| 	bool "Include kgdb kernel debugger"
 | |
| 	depends on DEBUGGER && (BROKEN || PPC_GEN550 || 4xx)
 | |
| 	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"
 | |
| 	depends on DEBUGGER && !PPC_ISERIES
 | |
| 	help
 | |
| 	  Include in-kernel hooks for the xmon kernel monitor/debugger.
 | |
| 	  Unless you are intending to debug the kernel, say N here.
 | |
| 	  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.
 | |
| 	  xmon will print a backtrace on the very first invocation.
 | |
| 	  'xmon=nobt' will disable this autobacktrace.
 | |
| 
 | |
| 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.
 | |
| 
 | |
| 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.
 | |
| 
 | |
| config BDI_SWITCH
 | |
| 	bool "Include BDI-2000 user context switcher"
 | |
| 	depends on DEBUG_KERNEL && PPC32
 | |
| 	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)"
 | |
| 	depends PPC_OF && !PPC_ISERIES
 | |
| 	help
 | |
| 	  Say Y here to see progress messages from the boot firmware in text
 | |
| 	  mode. Requires either BootX or Open Firmware.
 | |
| 
 | |
| config SERIAL_TEXT_DEBUG
 | |
| 	bool "Support for early boot texts over serial port"
 | |
| 	depends on 4xx || LOPEC || MV64X60 || PPLUS || PRPMC800 || \
 | |
| 		PPC_GEN550 || PPC_MPC52xx
 | |
| 
 | |
| config PPC_EARLY_DEBUG
 | |
| 	bool "Early debugging (dangerous)"
 | |
| 
 | |
| choice
 | |
| 	prompt "Early debugging console"
 | |
| 	depends on PPC_EARLY_DEBUG
 | |
| 	help
 | |
| 	  Use the selected console for early debugging. Careful, if you
 | |
| 	  enable debugging for the wrong type of machine your kernel
 | |
| 	  _will not boot_.
 | |
| 
 | |
| 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.
 | |
| 
 | |
| config PPC_EARLY_DEBUG_RTAS_PANEL
 | |
| 	bool "RTAS Panel"
 | |
| 	depends on PPC_RTAS
 | |
| 	help
 | |
| 	  Select this to enable early debugging via the RTAS panel.
 | |
| 
 | |
| 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.
 | |
| 
 | |
| 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.
 | |
| 
 | |
| endchoice
 | |
| 
 | |
| endmenu
 |