summaryrefslogtreecommitdiffstats
path: root/include/linux/nmi.h
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2014-09-03 23:57:13 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2015-07-17 12:23:17 +0100
commitb2c0b2cbb282f0cf42518ffacbe197e6f2884168 (patch)
tree4b7fc7ce95c914e2a62bce31385711cdd8c29669 /include/linux/nmi.h
parentd770e558e21961ad6cfdf0ff7df0eb5d7d4f0754 (diff)
downloadlinux-b2c0b2cbb282f0cf42518ffacbe197e6f2884168.tar.gz
linux-b2c0b2cbb282f0cf42518ffacbe197e6f2884168.tar.bz2
linux-b2c0b2cbb282f0cf42518ffacbe197e6f2884168.zip
nmi: create generic NMI backtrace implementation
x86s NMI backtrace implementation (for arch_trigger_all_cpu_backtrace()) is fairly generic in nature - the only architecture specific bits are the act of raising the NMI to other CPUs, and reporting the status of the NMI handler. These are fairly simple to factor out, and produce a generic implementation which can be shared between ARM and x86. Reviewed-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'include/linux/nmi.h')
-rw-r--r--include/linux/nmi.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/linux/nmi.h b/include/linux/nmi.h
index f94da0e65dea..5791e3229068 100644
--- a/include/linux/nmi.h
+++ b/include/linux/nmi.h
@@ -49,6 +49,12 @@ static inline bool trigger_allbutself_cpu_backtrace(void)
arch_trigger_all_cpu_backtrace(false);
return true;
}
+
+/* generic implementation */
+void nmi_trigger_all_cpu_backtrace(bool include_self,
+ void (*raise)(cpumask_t *mask));
+bool nmi_cpu_backtrace(struct pt_regs *regs);
+
#else
static inline bool trigger_all_cpu_backtrace(void)
{