2008-10-22 22:26:29 -07:00
# ifndef _ASM_X86_KDEBUG_H
# define _ASM_X86_KDEBUG_H
2007-10-15 23:28:20 +02: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_NMIWATCHDOG ,
DIE_KERNELDEBUG ,
DIE_TRAP ,
DIE_GPF ,
DIE_CALL ,
DIE_NMI_IPI ,
DIE_PAGE_FAULT ,
2008-02-15 14:55:53 -06:00
DIE_NMIUNKNOWN ,
2007-10-15 23:28:20 +02:00
} ;
2008-01-30 13:33:07 +01:00
extern void printk_address ( unsigned long address , int reliable ) ;
2008-03-23 01:02:31 -07:00
extern void die ( const char * , struct pt_regs * , long ) ;
2008-01-30 13:31:23 +01:00
extern int __must_check __die ( const char * , struct pt_regs * , long ) ;
2007-10-15 23:28:20 +02:00
extern void show_registers ( struct pt_regs * regs ) ;
2008-01-30 13:33:07 +01:00
extern void show_trace ( struct task_struct * t , struct pt_regs * regs ,
2008-03-23 01:02:31 -07:00
unsigned long * sp , unsigned long bp ) ;
2008-04-03 16:40:48 +03:00
extern void __show_regs ( struct pt_regs * regs , int all ) ;
2008-01-30 13:30:17 +01:00
extern void show_regs ( struct pt_regs * regs ) ;
2007-10-15 23:28:20 +02:00
extern unsigned long oops_begin ( void ) ;
2008-01-30 13:31:23 +01:00
extern void oops_end ( unsigned long , struct pt_regs * , int signr ) ;
2010-08-09 16:11:22 -05:00
# ifdef CONFIG_KEXEC
2010-07-20 18:09:05 -05:00
extern int in_crash_kexec ;
2010-08-09 16:11:22 -05: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-15 23:28:20 +02:00
2008-10-22 22:26:29 -07:00
# endif /* _ASM_X86_KDEBUG_H */