Loading arch/sh/Kconfig.debug +8 −12 Original line number Diff line number Diff line Loading @@ -61,12 +61,14 @@ config EARLY_PRINTK select both the EARLY_SCIF_CONSOLE and SH_STANDARD_BIOS, using the kernel command line option to toggle back and forth. config DEBUG_STACKOVERFLOW config STACK_DEBUG bool "Check for stack overflows" depends on DEBUG_KERNEL && SUPERH32 help This option will cause messages to be printed if free stack space drops below a certain limit. drops below a certain limit. Saying Y here will add overhead to every function call and will therefore incur a major performance hit. Most users should say N. config DEBUG_STACK_USAGE bool "Stack utilization instrumentation" Loading Loading @@ -123,15 +125,9 @@ config SH64_SR_WATCH bool "Debug: set SR.WATCH to enable hardware watchpoints and trace" depends on SUPERH64 config STACK_DEBUG bool "Enable diagnostic checks of the kernel stack" depends on FUNCTION_TRACER select DEBUG_STACKOVERFLOW default n help This option allows checks to be performed on the kernel stack at runtime. Saying Y here will add overhead to every function call and will therefore incur a major performance hit. Most users should say N. config MCOUNT def_bool y depends on SUPERH32 depends on STACK_DEBUG || FUNCTION_TRACER endmenu arch/sh/Makefile +4 −0 Original line number Diff line number Diff line Loading @@ -186,6 +186,10 @@ KBUILD_CFLAGS += -pipe $(cflags-y) KBUILD_CPPFLAGS += $(cflags-y) KBUILD_AFLAGS += $(cflags-y) ifeq ($(CONFIG_MCOUNT),y) KBUILD_CFLAGS += -pg endif libs-$(CONFIG_SUPERH32) := arch/sh/lib/ $(libs-y) libs-$(CONFIG_SUPERH64) := arch/sh/lib64/ $(libs-y) Loading arch/sh/boot/compressed/Makefile +1 −1 Original line number Diff line number Diff line Loading @@ -24,7 +24,7 @@ IMAGE_OFFSET := $(shell /bin/bash -c 'printf "0x%08x" \ LIBGCC := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name) ifeq ($(CONFIG_FUNCTION_TRACER),y) ifeq ($(CONFIG_MCOUNT),y) ORIG_CFLAGS := $(KBUILD_CFLAGS) KBUILD_CFLAGS = $(subst -pg, , $(ORIG_CFLAGS)) endif Loading arch/sh/kernel/irq.c +0 −17 Original line number Diff line number Diff line Loading @@ -114,23 +114,6 @@ asmlinkage int do_IRQ(unsigned int irq, struct pt_regs *regs) #endif irq_enter(); #ifdef CONFIG_DEBUG_STACKOVERFLOW /* Debugging check for stack overflow: is there less than 1KB free? */ { long sp; __asm__ __volatile__ ("and r15, %0" : "=r" (sp) : "0" (THREAD_SIZE - 1)); if (unlikely(sp < (sizeof(struct thread_info) + STACK_WARN))) { printk("do_IRQ: stack overflow: %ld\n", sp - sizeof(struct thread_info)); dump_stack(); } } #endif irq = irq_demux(intc_evt2irq(irq)); #ifdef CONFIG_IRQSTACKS Loading arch/sh/kernel/sh_ksyms_32.c +2 −2 Original line number Diff line number Diff line Loading @@ -106,8 +106,8 @@ EXPORT_SYMBOL(flush_dcache_page); EXPORT_SYMBOL(clear_user_page); #endif #ifdef CONFIG_FUNCTION_TRACER EXPORT_SYMBOL(mcount); #ifdef CONFIG_MCOUNT DECLARE_EXPORT(mcount); #endif EXPORT_SYMBOL(csum_partial); EXPORT_SYMBOL(csum_partial_copy_generic); Loading Loading
arch/sh/Kconfig.debug +8 −12 Original line number Diff line number Diff line Loading @@ -61,12 +61,14 @@ config EARLY_PRINTK select both the EARLY_SCIF_CONSOLE and SH_STANDARD_BIOS, using the kernel command line option to toggle back and forth. config DEBUG_STACKOVERFLOW config STACK_DEBUG bool "Check for stack overflows" depends on DEBUG_KERNEL && SUPERH32 help This option will cause messages to be printed if free stack space drops below a certain limit. drops below a certain limit. Saying Y here will add overhead to every function call and will therefore incur a major performance hit. Most users should say N. config DEBUG_STACK_USAGE bool "Stack utilization instrumentation" Loading Loading @@ -123,15 +125,9 @@ config SH64_SR_WATCH bool "Debug: set SR.WATCH to enable hardware watchpoints and trace" depends on SUPERH64 config STACK_DEBUG bool "Enable diagnostic checks of the kernel stack" depends on FUNCTION_TRACER select DEBUG_STACKOVERFLOW default n help This option allows checks to be performed on the kernel stack at runtime. Saying Y here will add overhead to every function call and will therefore incur a major performance hit. Most users should say N. config MCOUNT def_bool y depends on SUPERH32 depends on STACK_DEBUG || FUNCTION_TRACER endmenu
arch/sh/Makefile +4 −0 Original line number Diff line number Diff line Loading @@ -186,6 +186,10 @@ KBUILD_CFLAGS += -pipe $(cflags-y) KBUILD_CPPFLAGS += $(cflags-y) KBUILD_AFLAGS += $(cflags-y) ifeq ($(CONFIG_MCOUNT),y) KBUILD_CFLAGS += -pg endif libs-$(CONFIG_SUPERH32) := arch/sh/lib/ $(libs-y) libs-$(CONFIG_SUPERH64) := arch/sh/lib64/ $(libs-y) Loading
arch/sh/boot/compressed/Makefile +1 −1 Original line number Diff line number Diff line Loading @@ -24,7 +24,7 @@ IMAGE_OFFSET := $(shell /bin/bash -c 'printf "0x%08x" \ LIBGCC := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name) ifeq ($(CONFIG_FUNCTION_TRACER),y) ifeq ($(CONFIG_MCOUNT),y) ORIG_CFLAGS := $(KBUILD_CFLAGS) KBUILD_CFLAGS = $(subst -pg, , $(ORIG_CFLAGS)) endif Loading
arch/sh/kernel/irq.c +0 −17 Original line number Diff line number Diff line Loading @@ -114,23 +114,6 @@ asmlinkage int do_IRQ(unsigned int irq, struct pt_regs *regs) #endif irq_enter(); #ifdef CONFIG_DEBUG_STACKOVERFLOW /* Debugging check for stack overflow: is there less than 1KB free? */ { long sp; __asm__ __volatile__ ("and r15, %0" : "=r" (sp) : "0" (THREAD_SIZE - 1)); if (unlikely(sp < (sizeof(struct thread_info) + STACK_WARN))) { printk("do_IRQ: stack overflow: %ld\n", sp - sizeof(struct thread_info)); dump_stack(); } } #endif irq = irq_demux(intc_evt2irq(irq)); #ifdef CONFIG_IRQSTACKS Loading
arch/sh/kernel/sh_ksyms_32.c +2 −2 Original line number Diff line number Diff line Loading @@ -106,8 +106,8 @@ EXPORT_SYMBOL(flush_dcache_page); EXPORT_SYMBOL(clear_user_page); #endif #ifdef CONFIG_FUNCTION_TRACER EXPORT_SYMBOL(mcount); #ifdef CONFIG_MCOUNT DECLARE_EXPORT(mcount); #endif EXPORT_SYMBOL(csum_partial); EXPORT_SYMBOL(csum_partial_copy_generic); Loading