2008-10-23 13:26:29 +08:00
|
|
|
#ifndef _ASM_X86_KDEBUG_H
|
|
|
|
#define _ASM_X86_KDEBUG_H
|
2007-10-16 05:28:20 +08:00
|
|
|
|
|
|
|
#include <linux/notifier.h>
|
|
|
|
|
|
|
|
struct pt_regs;
|
|
|
|
|
|
|
|
/* Grossly misnamed. */
|
|
|
|
enum die_val {
|
|
|
|
DIE_OOPS = 1,
|
|
|
|
DIE_INT3,
|
|
|
|
DIE_DEBUG,
|
|
|
|
DIE_PANIC,
|
|
|
|
DIE_NMI,
|
|
|
|
DIE_DIE,
|
|
|
|
DIE_KERNELDEBUG,
|
|
|
|
DIE_TRAP,
|
|
|
|
DIE_GPF,
|
|
|
|
DIE_CALL,
|
|
|
|
DIE_PAGE_FAULT,
|
2008-02-16 04:55:53 +08:00
|
|
|
DIE_NMIUNKNOWN,
|
2007-10-16 05:28:20 +08:00
|
|
|
};
|
|
|
|
|
2008-01-30 20:33:07 +08:00
|
|
|
extern void printk_address(unsigned long address, int reliable);
|
2008-03-23 16:02:31 +08:00
|
|
|
extern void die(const char *, struct pt_regs *,long);
|
2008-01-30 20:31:23 +08:00
|
|
|
extern int __must_check __die(const char *, struct pt_regs *, long);
|
2007-10-16 05:28:20 +08:00
|
|
|
extern void show_registers(struct pt_regs *regs);
|
2008-01-30 20:33:07 +08:00
|
|
|
extern void show_trace(struct task_struct *t, struct pt_regs *regs,
|
2011-03-18 10:40:06 +08:00
|
|
|
unsigned long *sp, unsigned long bp);
|
2008-04-03 21:40:48 +08:00
|
|
|
extern void __show_regs(struct pt_regs *regs, int all);
|
2008-01-30 20:30:17 +08:00
|
|
|
extern void show_regs(struct pt_regs *regs);
|
2007-10-16 05:28:20 +08:00
|
|
|
extern unsigned long oops_begin(void);
|
2008-01-30 20:31:23 +08:00
|
|
|
extern void oops_end(unsigned long, struct pt_regs *, int signr);
|
2010-08-10 05:11:22 +08:00
|
|
|
#ifdef CONFIG_KEXEC
|
2010-07-21 07:09:05 +08:00
|
|
|
extern int in_crash_kexec;
|
2010-08-10 05:11:22 +08:00
|
|
|
#else
|
|
|
|
/* no crash dump is ever in progress if no crash kernel can be kexec'd */
|
|
|
|
#define in_crash_kexec 0
|
|
|
|
#endif
|
2007-10-16 05:28:20 +08:00
|
|
|
|
2008-10-23 13:26:29 +08:00
|
|
|
#endif /* _ASM_X86_KDEBUG_H */
|