1menu "Kernel hacking" 2 3source "lib/Kconfig.debug" 4 5config DEBUG_STACKOVERFLOW 6 bool "Check for stack overflows" 7 depends on DEBUG_KERNEL 8 9config DEBUG_DECOMPRESS_KERNEL 10 bool "Using serial port during decompressing kernel" 11 depends on DEBUG_KERNEL 12 default n 13 help 14 If you say Y here you will confirm the start and the end of 15 decompressing Linux seeing "Uncompressing Linux... " and 16 "Ok, booting the kernel.\n" on console. 17 18config TEST_MISALIGNMENT_HANDLER 19 bool "Run tests on the misalignment handler" 20 depends on DEBUG_KERNEL 21 default n 22 help 23 If you say Y here the kernel will execute a list of misaligned memory 24 accesses to make sure the misalignment handler deals them with 25 correctly. If it does not, the kernel will throw a BUG. 26 27config KPROBES 28 bool "Kprobes" 29 depends on DEBUG_KERNEL 30 help 31 Kprobes allows you to trap at almost any kernel address and 32 execute a callback function. register_kprobe() establishes 33 a probepoint and specifies the callback. Kprobes is useful 34 for kernel debugging, non-intrusive instrumentation and testing. 35 If in doubt, say "N". 36 37config GDBSTUB 38 bool "Remote GDB kernel debugging" 39 depends on DEBUG_KERNEL 40 select DEBUG_INFO 41 select FRAME_POINTER 42 help 43 If you say Y here, it will be possible to remotely debug the kernel 44 using gdb. This enlarges your kernel ELF image disk size by several 45 megabytes and requires a machine with more than 16 MB, better 32 MB 46 RAM to avoid excessive linking time. This is only useful for kernel 47 hackers. If unsure, say N. 48 49config GDBSTUB_IMMEDIATE 50 bool "Break into GDB stub immediately" 51 depends on GDBSTUB 52 help 53 If you say Y here, GDB stub will break into the program as soon as 54 possible, leaving the program counter at the beginning of 55 start_kernel() in init/main.c. 56 57config GDB_CONSOLE 58 bool "Console output to GDB" 59 depends on GDBSTUB 60 help 61 If you are using GDB for remote debugging over a serial port and 62 would like kernel messages to be formatted into GDB $O packets so 63 that GDB prints them as program output, say 'Y'. 64 65config GDBSTUB_DEBUGGING 66 bool "Debug GDB stub by messages to serial port" 67 depends on GDBSTUB 68 help 69 This causes debugging messages to be displayed at various points 70 during execution of the GDB stub routines. Such messages will be 71 displayed on ttyS0 if that isn't the GDB stub's port, or ttySM0 72 otherwise. 73 74config GDBSTUB_DEBUG_ENTRY 75 bool "Debug GDB stub entry" 76 depends on GDBSTUB_DEBUGGING 77 help 78 This option causes information to be displayed about entry to or exit 79 from the main GDB stub routine. 80 81config GDBSTUB_DEBUG_PROTOCOL 82 bool "Debug GDB stub protocol" 83 depends on GDBSTUB_DEBUGGING 84 help 85 This option causes information to be displayed about the GDB remote 86 protocol messages generated exchanged with GDB. 87 88config GDBSTUB_DEBUG_IO 89 bool "Debug GDB stub I/O" 90 depends on GDBSTUB_DEBUGGING 91 help 92 This option causes information to be displayed about GDB stub's 93 low-level I/O. 94 95config GDBSTUB_DEBUG_BREAKPOINT 96 bool "Debug GDB stub breakpoint management" 97 depends on GDBSTUB_DEBUGGING 98 help 99 This option causes information to be displayed about GDB stub's 100 breakpoint management. 101 102choice 103 prompt "GDB stub port" 104 default GDBSTUB_TTYSM0 105 depends on GDBSTUB 106 help 107 Select the serial port used for GDB-stub. 108 109config GDBSTUB_ON_TTYSM0 110 bool "/dev/ttySM0 [SIF0]" 111 depends on MN10300_TTYSM0 112 select GDBSTUB_ON_TTYSMx 113 114config GDBSTUB_ON_TTYSM1 115 bool "/dev/ttySM1 [SIF1]" 116 depends on MN10300_TTYSM1 117 select GDBSTUB_ON_TTYSMx 118 119config GDBSTUB_ON_TTYSM2 120 bool "/dev/ttySM2 [SIF2]" 121 depends on MN10300_TTYSM2 122 select GDBSTUB_ON_TTYSMx 123 124config GDBSTUB_ON_TTYS0 125 bool "/dev/ttyS0" 126 select GDBSTUB_ON_TTYSx 127 128config GDBSTUB_ON_TTYS1 129 bool "/dev/ttyS1" 130 select GDBSTUB_ON_TTYSx 131 132endchoice 133 134config GDBSTUB_ON_TTYSMx 135 bool 136 depends on GDBSTUB_ON_TTYSM0 || GDBSTUB_ON_TTYSM1 || GDBSTUB_ON_TTYSM2 137 default y 138 139config GDBSTUB_ON_TTYSx 140 bool 141 depends on GDBSTUB_ON_TTYS0 || GDBSTUB_ON_TTYS1 142 default y 143 144endmenu 145