summaryrefslogtreecommitdiffstats
path: root/arch/sh/kernel/irq.c
diff options
context:
space:
mode:
authorMatt Fleming <matt@console-pimps.org>2009-08-14 01:58:43 +0900
committerPaul Mundt <lethal@linux-sh.org>2009-08-14 01:58:43 +0900
commitbd353861c735b2265c9d8b2559960c693e7c68ab (patch)
tree2cd13808cb4d50b6b4d63eff0d7ad5fa6d19f04d /arch/sh/kernel/irq.c
parent0eff9f66de79a0707a9c3a2f8528ccfd62100f0b (diff)
downloadlinux-0-day-bd353861c735b2265c9d8b2559960c693e7c68ab.tar.gz
linux-0-day-bd353861c735b2265c9d8b2559960c693e7c68ab.tar.xz
sh: dwarf unwinder support.
This is a first cut at a generic DWARF unwinder for the kernel. It's still lacking DWARF64 support and the DWARF expression support hasn't been tested very well but it is generating proper stacktraces on SH for WARN_ON() and NULL dereferences. Signed-off-by: Matt Fleming <matt@console-pimps.org> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/kernel/irq.c')
-rw-r--r--arch/sh/kernel/irq.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/sh/kernel/irq.c b/arch/sh/kernel/irq.c
index 278c68c60488b..2bb43dc74f227 100644
--- a/arch/sh/kernel/irq.c
+++ b/arch/sh/kernel/irq.c
@@ -14,6 +14,7 @@
#include <asm/processor.h>
#include <asm/machvec.h>
#include <asm/uaccess.h>
+#include <asm/dwarf.h>
#include <asm/thread_info.h>
#include <cpu/mmu_context.h>
@@ -261,6 +262,9 @@ void __init init_IRQ(void)
sh_mv.mv_init_irq();
irq_ctx_init(smp_processor_id());
+
+ /* This needs to be early, but not too early.. */
+ dwarf_unwinder_init();
}
#ifdef CONFIG_SPARSE_IRQ