blob: d7e2bcf49e4f0ee5ab826b8a2108c2f03f0d0b43 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#ifndef _X86_64_KDEBUG_H
2#define _X86_64_KDEBUG_H 1
3
4#include <linux/notifier.h>
5
6struct pt_regs;
7
Anil S Keshavamurthy1bd858a2006-06-26 00:25:25 -07008extern int register_page_fault_notifier(struct notifier_block *);
9extern int unregister_page_fault_notifier(struct notifier_block *);
Alan Sterne041c682006-03-27 01:16:30 -080010
Linus Torvalds1da177e2005-04-16 15:20:36 -070011/* Grossly misnamed. */
Alan Sterne041c682006-03-27 01:16:30 -080012enum die_val {
Linus Torvalds1da177e2005-04-16 15:20:36 -070013 DIE_OOPS = 1,
14 DIE_INT3,
15 DIE_DEBUG,
Linus Torvalds1da177e2005-04-16 15:20:36 -070016 DIE_PANIC,
17 DIE_NMI,
18 DIE_DIE,
19 DIE_NMIWATCHDOG,
20 DIE_KERNELDEBUG,
21 DIE_TRAP,
22 DIE_GPF,
23 DIE_CALL,
24 DIE_NMI_IPI,
25 DIE_PAGE_FAULT,
Alan Sterne041c682006-03-27 01:16:30 -080026};
27
Ingo Molnar3ac94932006-07-03 00:24:36 -070028extern void printk_address(unsigned long address);
Linus Torvalds1da177e2005-04-16 15:20:36 -070029extern void die(const char *,struct pt_regs *,long);
30extern void __die(const char *,struct pt_regs *,long);
31extern void show_registers(struct pt_regs *regs);
32extern void dump_pagetable(unsigned long);
Jan Beulich12091402005-09-12 18:49:24 +020033extern unsigned long oops_begin(void);
34extern void oops_end(unsigned long);
Linus Torvalds1da177e2005-04-16 15:20:36 -070035
36#endif