summaryrefslogtreecommitdiff
path: root/include/linux/nmi.h
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2015-09-08 22:28:10 +0300
committerLinus Torvalds <torvalds@linux-foundation.org>2015-09-08 22:28:10 +0300
commit6f0a2fc1feb19bd142961a39dc118e7e55418b3f (patch)
tree74ce14c6d03d8e3df9b6e624e02c2401c24684fe /include/linux/nmi.h
parent752240e74d650faa24425adc523f1308973ea51c (diff)
parent96f0e00378d4a1fc1b79933ef84e1595015de808 (diff)
downloadlinux-6f0a2fc1feb19bd142961a39dc118e7e55418b3f.tar.xz
Merge branch 'nmi' of git://ftp.arm.linux.org.uk/~rmk/linux-arm
Pull NMI backtrace update from Russell King: "These changes convert the x86 NMI handling to be a library implementation which other architectures can make use of. Thomas Gleixner has reviewed and tested these changes, and wishes me to send these rather than taking them through the tip tree. The final patch in the set adds an initial implementation using this infrastructure to ARM, even though it doesn't send the IPI at "NMI" level. Patches are in progress to add the ARM equivalent of NMI, but we still need the IRQ-level fallback for systems where the "NMI" isn't available due to secure firmware denying access to it" * 'nmi' of git://ftp.arm.linux.org.uk/~rmk/linux-arm: ARM: add basic support for on-demand backtrace of other CPUs nmi: x86: convert to generic nmi handler nmi: create generic NMI backtrace implementation
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 a91adf6e02f2..78488e099ce7 100644
--- a/include/linux/nmi.h
+++ b/include/linux/nmi.h
@@ -47,6 +47,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)
{