# SPDX-License-Identifier: GPL-2.0
menu "Kernel hacking"

config PROFILING
	bool "Kernel profiling support"

config SYSTEM_PROFILER
	bool "System profiling support"

source "lib/Kconfig.debug"

config ETRAX_KGDB
	bool "Use kernel GDB debugger"
	depends on DEBUG_KERNEL
	---help---
	  The CRIS version of gdb can be used to remotely debug a running
	  Linux kernel via the serial debug port.  Provided you have gdb-cris
	  installed, run gdb-cris vmlinux, then type

	  (gdb) set remotebaud 115200           <- kgdb uses 115200 as default
	  (gdb) target remote /dev/ttyS0        <- maybe you use another port

	  This should connect you to your booted kernel (or boot it now if you
	  didn't before).  The kernel halts when it boots, waiting for gdb if
	  this option is turned on!


config DEBUG_NMI_OOPS
	bool "NMI causes oops printout"
	depends on DEBUG_KERNEL
	help
	  If the system locks up without any debug information you can say Y
	  here to make it possible to dump an OOPS with an external NMI.

config NO_SEGFAULT_TERMINATION
	bool "Keep segfaulting processes"
	help
	  Place segfaulting user mode processes on a wait queue instead of
	  delivering a terminating SIGSEGV to allow debugging with gdb.

endmenu
