diff options
| author | Paul Mundt <lethal@linux-sh.org> | 2008-12-17 01:56:06 -0500 |
|---|---|---|
| committer | Paul Mundt <lethal@linux-sh.org> | 2008-12-22 04:44:47 -0500 |
| commit | 5d2685d0b3edc51ecc92604d5b7f5ca9b29b90bb (patch) | |
| tree | 389a38e95a74306e94c7bffc1b05635ff08db754 | |
| parent | fe58cac35f48a9598c2a1360c2204c73f7bca2d2 (diff) | |
sh: Conditionalize the code dumper on CONFIG_DUMP_CODE.
We don't really want this enabled by default, but it is still quite
useful for debugging. So, make it conditional and leave it off by
default.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| -rw-r--r-- | arch/sh/Kconfig.debug | 12 | ||||
| -rw-r--r-- | arch/sh/include/asm/processor_32.h | 8 | ||||
| -rw-r--r-- | arch/sh/kernel/Makefile_32 | 3 |
3 files changed, 22 insertions, 1 deletions
diff --git a/arch/sh/Kconfig.debug b/arch/sh/Kconfig.debug index 0dc340d5795e..0d62681f72a0 100644 --- a/arch/sh/Kconfig.debug +++ b/arch/sh/Kconfig.debug | |||
| @@ -98,6 +98,18 @@ config IRQSTACKS | |||
| 98 | for handling hard and soft interrupts. This can help avoid | 98 | for handling hard and soft interrupts. This can help avoid |
| 99 | overflowing the process kernel stacks. | 99 | overflowing the process kernel stacks. |
| 100 | 100 | ||
| 101 | config DUMP_CODE | ||
| 102 | bool "Show disassembly of nearby code in register dumps" | ||
| 103 | depends on DEBUG_KERNEL && SUPERH32 | ||
| 104 | default y if DEBUG_BUGVERBOSE | ||
| 105 | default n | ||
| 106 | help | ||
| 107 | This prints out a code trace of the instructions leading up to | ||
| 108 | the faulting instruction as a debugging aid. As this does grow | ||
| 109 | the kernel in size a bit, most users will want to say N here. | ||
| 110 | |||
| 111 | Those looking for more verbose debugging output should say Y. | ||
| 112 | |||
| 101 | config SH_NO_BSS_INIT | 113 | config SH_NO_BSS_INIT |
| 102 | bool "Avoid zeroing BSS (to speed-up startup on suitable platforms)" | 114 | bool "Avoid zeroing BSS (to speed-up startup on suitable platforms)" |
| 103 | depends on DEBUG_KERNEL | 115 | depends on DEBUG_KERNEL |
diff --git a/arch/sh/include/asm/processor_32.h b/arch/sh/include/asm/processor_32.h index 2bfb7353493a..d79063c5eb9c 100644 --- a/arch/sh/include/asm/processor_32.h +++ b/arch/sh/include/asm/processor_32.h | |||
| @@ -175,7 +175,15 @@ static __inline__ void enable_fpu(void) | |||
| 175 | 175 | ||
| 176 | void show_trace(struct task_struct *tsk, unsigned long *sp, | 176 | void show_trace(struct task_struct *tsk, unsigned long *sp, |
| 177 | struct pt_regs *regs); | 177 | struct pt_regs *regs); |
| 178 | |||
| 179 | #ifdef CONFIG_DUMP_CODE | ||
| 178 | void show_code(struct pt_regs *regs); | 180 | void show_code(struct pt_regs *regs); |
| 181 | #else | ||
| 182 | static inline void show_code(struct pt_regs *regs) | ||
| 183 | { | ||
| 184 | } | ||
| 185 | #endif | ||
| 186 | |||
| 179 | extern unsigned long get_wchan(struct task_struct *p); | 187 | extern unsigned long get_wchan(struct task_struct *p); |
| 180 | 188 | ||
| 181 | #define KSTK_EIP(tsk) (task_pt_regs(tsk)->pc) | 189 | #define KSTK_EIP(tsk) (task_pt_regs(tsk)->pc) |
diff --git a/arch/sh/kernel/Makefile_32 b/arch/sh/kernel/Makefile_32 index 3c975ab45590..2e1b86e16ab5 100644 --- a/arch/sh/kernel/Makefile_32 +++ b/arch/sh/kernel/Makefile_32 | |||
| @@ -9,7 +9,7 @@ ifdef CONFIG_FUNCTION_TRACER | |||
| 9 | CFLAGS_REMOVE_ftrace.o = -pg | 9 | CFLAGS_REMOVE_ftrace.o = -pg |
| 10 | endif | 10 | endif |
| 11 | 11 | ||
| 12 | obj-y := debugtraps.o disassemble.o idle.o io.o io_generic.o irq.o \ | 12 | obj-y := debugtraps.o idle.o io.o io_generic.o irq.o \ |
| 13 | machvec.o process_32.o ptrace_32.o setup.o signal_32.o \ | 13 | machvec.o process_32.o ptrace_32.o setup.o signal_32.o \ |
| 14 | sys_sh.o sys_sh32.o syscalls_32.o time_32.o topology.o \ | 14 | sys_sh.o sys_sh32.o syscalls_32.o time_32.o topology.o \ |
| 15 | traps.o traps_32.o | 15 | traps.o traps_32.o |
| @@ -29,5 +29,6 @@ obj-$(CONFIG_IO_TRAPPED) += io_trapped.o | |||
| 29 | obj-$(CONFIG_KPROBES) += kprobes.o | 29 | obj-$(CONFIG_KPROBES) += kprobes.o |
| 30 | obj-$(CONFIG_GENERIC_GPIO) += gpio.o | 30 | obj-$(CONFIG_GENERIC_GPIO) += gpio.o |
| 31 | obj-$(CONFIG_DYNAMIC_FTRACE) += ftrace.o | 31 | obj-$(CONFIG_DYNAMIC_FTRACE) += ftrace.o |
| 32 | obj-$(CONFIG_DUMP_CODE) += disassemble.o | ||
| 32 | 33 | ||
| 33 | EXTRA_CFLAGS += -Werror | 34 | EXTRA_CFLAGS += -Werror |
