aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-sh/kdebug.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-sh/kdebug.h')
-rw-r--r--include/asm-sh/kdebug.h35
1 files changed, 35 insertions, 0 deletions
diff --git a/include/asm-sh/kdebug.h b/include/asm-sh/kdebug.h
new file mode 100644
index 000000000000..ef009baf5a11
--- /dev/null
+++ b/include/asm-sh/kdebug.h
@@ -0,0 +1,35 @@
1#ifndef __ASM_SH_KDEBUG_H
2#define __ASM_SH_KDEBUG_H
3
4#include <linux/notifier.h>
5
6struct pt_regs;
7
8struct die_args {
9 struct pt_regs *regs;
10 int trapnr;
11};
12
13int register_die_notifier(struct notifier_block *nb);
14int unregister_die_notifier(struct notifier_block *nb);
15int register_page_fault_notifier(struct notifier_block *nb);
16int unregister_page_fault_notifier(struct notifier_block *nb);
17extern struct atomic_notifier_head shdie_chain;
18
19/* Grossly misnamed. */
20enum die_val {
21 DIE_TRAP,
22 DIE_PAGE_FAULT,
23};
24
25static inline int notify_die(enum die_val val, struct pt_regs *regs,
26 int trap, int sig)
27{
28 struct die_args args = {
29 .regs = regs,
30 .trapnr = trap,
31 };
32
33 return atomic_notifier_call_chain(&shdie_chain, val, &args);
34}
35#endif /* __ASM_SH_KDEBUG_H */