traps.h 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. #ifndef _ASM_X86_TRAPS_H
  2. #define _ASM_X86_TRAPS_H
  3. /* Common in X86_32 and X86_64 */
  4. asmlinkage void divide_error(void);
  5. asmlinkage void debug(void);
  6. asmlinkage void nmi(void);
  7. asmlinkage void int3(void);
  8. asmlinkage void overflow(void);
  9. asmlinkage void bounds(void);
  10. asmlinkage void invalid_op(void);
  11. asmlinkage void device_not_available(void);
  12. asmlinkage void coprocessor_segment_overrun(void);
  13. asmlinkage void invalid_TSS(void);
  14. asmlinkage void segment_not_present(void);
  15. asmlinkage void stack_segment(void);
  16. asmlinkage void general_protection(void);
  17. asmlinkage void page_fault(void);
  18. asmlinkage void coprocessor_error(void);
  19. asmlinkage void simd_coprocessor_error(void);
  20. asmlinkage void alignment_check(void);
  21. asmlinkage void spurious_interrupt_bug(void);
  22. #ifdef CONFIG_X86_MCE
  23. asmlinkage void machine_check(void);
  24. #endif /* CONFIG_X86_MCE */
  25. void do_divide_error(struct pt_regs *, long);
  26. void do_overflow(struct pt_regs *, long);
  27. void do_bounds(struct pt_regs *, long);
  28. void do_coprocessor_segment_overrun(struct pt_regs *, long);
  29. void do_invalid_TSS(struct pt_regs *, long);
  30. void do_segment_not_present(struct pt_regs *, long);
  31. void do_stack_segment(struct pt_regs *, long);
  32. void do_alignment_check(struct pt_regs *, long);
  33. void do_invalid_op(struct pt_regs *, long);
  34. void do_general_protection(struct pt_regs *, long);
  35. void do_nmi(struct pt_regs *, long);
  36. extern int panic_on_unrecovered_nmi;
  37. extern int kstack_depth_to_print;
  38. #ifdef CONFIG_X86_32
  39. void do_iret_error(struct pt_regs *, long);
  40. void do_int3(struct pt_regs *, long);
  41. void do_debug(struct pt_regs *, long);
  42. void math_error(void __user *);
  43. void do_coprocessor_error(struct pt_regs *, long);
  44. void do_simd_coprocessor_error(struct pt_regs *, long);
  45. void do_spurious_interrupt_bug(struct pt_regs *, long);
  46. unsigned long patch_espfix_desc(unsigned long, unsigned long);
  47. asmlinkage void math_emulate(long);
  48. #else /* CONFIG_X86_32 */
  49. asmlinkage void double_fault(void);
  50. asmlinkage void do_int3(struct pt_regs *, long);
  51. asmlinkage void do_stack_segment(struct pt_regs *, long);
  52. asmlinkage void do_debug(struct pt_regs *, unsigned long);
  53. asmlinkage void do_coprocessor_error(struct pt_regs *);
  54. asmlinkage void do_simd_coprocessor_error(struct pt_regs *);
  55. asmlinkage void do_spurious_interrupt_bug(struct pt_regs *);
  56. #endif /* CONFIG_X86_32 */
  57. #endif /* _ASM_X86_TRAPS_H */