Commit | Line | Data |
---|---|---|
b2441318 | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
1965aae3 PA |
2 | #ifndef _ASM_X86_KDEBUG_H |
3 | #define _ASM_X86_KDEBUG_H | |
35cc4611 TG |
4 | |
5 | #include <linux/notifier.h> | |
6 | ||
7 | struct pt_regs; | |
8 | ||
9 | /* Grossly misnamed. */ | |
10 | enum die_val { | |
11 | DIE_OOPS = 1, | |
12 | DIE_INT3, | |
13 | DIE_DEBUG, | |
14 | DIE_PANIC, | |
15 | DIE_NMI, | |
16 | DIE_DIE, | |
35cc4611 TG |
17 | DIE_KERNELDEBUG, |
18 | DIE_TRAP, | |
19 | DIE_GPF, | |
20 | DIE_CALL, | |
35cc4611 | 21 | DIE_PAGE_FAULT, |
d3597524 | 22 | DIE_NMIUNKNOWN, |
35cc4611 TG |
23 | }; |
24 | ||
9fe6299d JH |
25 | enum show_regs_mode { |
26 | SHOW_REGS_SHORT, | |
27 | /* | |
28 | * For when userspace crashed, but we don't think it's our fault, and | |
29 | * therefore don't print kernel registers. | |
30 | */ | |
31 | SHOW_REGS_USER, | |
32 | SHOW_REGS_ALL | |
33 | }; | |
34 | ||
f461f137 | 35 | extern void die(const char *, struct pt_regs *,long); |
aa49f204 | 36 | void die_addr(const char *str, struct pt_regs *regs, long err, long gp_addr); |
22f5991c | 37 | extern int __must_check __die(const char *, struct pt_regs *, long); |
81c2949f | 38 | extern void show_stack_regs(struct pt_regs *regs); |
44e21535 DS |
39 | extern void __show_regs(struct pt_regs *regs, enum show_regs_mode, |
40 | const char *log_lvl); | |
fd07f802 | 41 | extern void show_iret_regs(struct pt_regs *regs, const char *log_lvl); |
35cc4611 | 42 | extern unsigned long oops_begin(void); |
22f5991c | 43 | extern void oops_end(unsigned long, struct pt_regs *, int signr); |
35cc4611 | 44 | |
1965aae3 | 45 | #endif /* _ASM_X86_KDEBUG_H */ |