.. | .. |
---|
29 | 29 | (b)->handler = (tmp).handler - (delta); \ |
---|
30 | 30 | } while (0) |
---|
31 | 31 | |
---|
32 | | -extern int fixup_exception(struct pt_regs *regs, int trapnr); |
---|
| 32 | +enum handler_type { |
---|
| 33 | + EX_HANDLER_NONE, |
---|
| 34 | + EX_HANDLER_FAULT, |
---|
| 35 | + EX_HANDLER_UACCESS, |
---|
| 36 | + EX_HANDLER_OTHER |
---|
| 37 | +}; |
---|
| 38 | + |
---|
| 39 | +extern int fixup_exception(struct pt_regs *regs, int trapnr, |
---|
| 40 | + unsigned long error_code, unsigned long fault_addr); |
---|
33 | 41 | extern int fixup_bug(struct pt_regs *regs, int trapnr); |
---|
34 | | -extern bool ex_has_fault_handler(unsigned long ip); |
---|
| 42 | +extern enum handler_type ex_get_fault_handler_type(unsigned long ip); |
---|
35 | 43 | extern void early_fixup_exception(struct pt_regs *regs, int trapnr); |
---|
36 | 44 | |
---|
37 | 45 | #endif |
---|