diff --git a/arch/x86/include/asm/stacktrace.h b/arch/x86/include/asm/stacktrace.h
index ed31d6d..1502799 100644
--- a/arch/x86/include/asm/stacktrace.h
+++ b/arch/x86/include/asm/stacktrace.h
@@ -43,9 +43,18 @@
 	walk_stack_t	walk_stack;
 };
 
-void dump_trace(struct task_struct *tsk, struct pt_regs *regs,
-		unsigned long *stack, unsigned long bp,
-		const struct stacktrace_ops *ops, void *data);
+typedef void (*dump_trace_t)(struct task_struct *tsk,
+			     struct pt_regs *regs,
+			     unsigned long *stack,
+			     unsigned long bp,
+			     const struct stacktrace_ops *ops,
+			     void *data);
+
+extern dump_trace_t dump_trace;
+
+void dump_trace_legacy(struct task_struct *tsk, struct pt_regs *regs,
+		       unsigned long *stack, unsigned long bp,
+		       const struct stacktrace_ops *ops, void *data);
 
 #ifdef CONFIG_DWARF_UNWIND
 void dump_trace_dwarf(struct task_struct *task, struct pt_regs *regs,
diff --git a/arch/x86/kernel/Makefile b/arch/x86/kernel/Makefile
index 04d6b16..4178e1e 100644
--- a/arch/x86/kernel/Makefile
+++ b/arch/x86/kernel/Makefile
@@ -35,6 +35,7 @@
 obj-y			+= tsc.o io_delay.o rtc.o
 obj-y			+= pci-iommu_table.o
 obj-y			+= resource.o
+obj-y			+= dumptrace.o
 
 obj-$(CONFIG_PREEMPT)	+= preempt.o
 
diff --git a/arch/x86/kernel/dumpstack_32.c b/arch/x86/kernel/dumpstack_32.c
index f2a1770..c1cd603 100644
--- a/arch/x86/kernel/dumpstack_32.c
+++ b/arch/x86/kernel/dumpstack_32.c
@@ -17,9 +17,9 @@
 #include <asm/stacktrace.h>
 
 
-void dump_trace(struct task_struct *task, struct pt_regs *regs,
-		unsigned long *stack, unsigned long bp,
-		const struct stacktrace_ops *ops, void *data)
+void dump_trace_legacy(struct task_struct *task, struct pt_regs *regs,
+		       unsigned long *stack, unsigned long bp,
+		       const struct stacktrace_ops *ops, void *data)
 {
 	int graph = 0;
 
@@ -52,7 +52,7 @@
 		touch_nmi_watchdog();
 	}
 }
-EXPORT_SYMBOL(dump_trace);
+EXPORT_SYMBOL(dump_trace_legacy);
 
 void
 show_stack_log_lvl(struct task_struct *task, struct pt_regs *regs,
diff --git a/arch/x86/kernel/dumpstack_64.c b/arch/x86/kernel/dumpstack_64.c
index addb207..1b1b496 100644
--- a/arch/x86/kernel/dumpstack_64.c
+++ b/arch/x86/kernel/dumpstack_64.c
@@ -111,9 +111,9 @@
  * severe exception (double fault, nmi, stack fault, debug, mce) hardware stack
  */
 
-void dump_trace(struct task_struct *task, struct pt_regs *regs,
-		unsigned long *stack, unsigned long bp,
-		const struct stacktrace_ops *ops, void *data)
+void dump_trace_legacy(struct task_struct *task, struct pt_regs *regs,
+		       unsigned long *stack, unsigned long bp,
+		       const struct stacktrace_ops *ops, void *data)
 {
 	const unsigned cpu = get_cpu();
 	unsigned long *irq_stack_end =
@@ -194,7 +194,7 @@
 	bp = ops->walk_stack(tinfo, stack, bp, ops, data, NULL, &graph);
 	put_cpu();
 }
-EXPORT_SYMBOL(dump_trace);
+EXPORT_SYMBOL(dump_trace_legacy);
 
 void
 show_stack_log_lvl(struct task_struct *task, struct pt_regs *regs,
diff --git a/arch/x86/kernel/dumptrace.c b/arch/x86/kernel/dumptrace.c
new file mode 100644
index 0000000..3cb943f
--- /dev/null
+++ b/arch/x86/kernel/dumptrace.c
@@ -0,0 +1,7 @@
+
+#include <linux/export.h>
+#include <asm/stacktrace.h>
+
+dump_trace_t dump_trace = dump_trace_legacy;
+
+EXPORT_SYMBOL(dump_trace);
