at v2.6.19 1.0 kB view raw
1#ifndef _ASM_POWERPC_KDEBUG_H 2#define _ASM_POWERPC_KDEBUG_H 3#ifdef __KERNEL__ 4 5/* nearly identical to x86_64/i386 code */ 6 7#include <linux/notifier.h> 8 9struct pt_regs; 10 11struct die_args { 12 struct pt_regs *regs; 13 const char *str; 14 long err; 15 int trapnr; 16 int signr; 17}; 18 19extern int register_die_notifier(struct notifier_block *); 20extern int unregister_die_notifier(struct notifier_block *); 21extern int register_page_fault_notifier(struct notifier_block *); 22extern int unregister_page_fault_notifier(struct notifier_block *); 23extern struct atomic_notifier_head powerpc_die_chain; 24 25/* Grossly misnamed. */ 26enum die_val { 27 DIE_OOPS = 1, 28 DIE_IABR_MATCH, 29 DIE_DABR_MATCH, 30 DIE_BPT, 31 DIE_SSTEP, 32 DIE_PAGE_FAULT, 33}; 34 35static inline int notify_die(enum die_val val,char *str,struct pt_regs *regs,long err,int trap, int sig) 36{ 37 struct die_args args = { .regs=regs, .str=str, .err=err, .trapnr=trap,.signr=sig }; 38 return atomic_notifier_call_chain(&powerpc_die_chain, val, &args); 39} 40 41#endif /* __KERNEL__ */ 42#endif /* _ASM_POWERPC_KDEBUG_H */