/include/linux/bug.h

https://bitbucket.org/cyanogenmod/android_kernel_asus_tf300t · C Header · 38 lines · 26 code · 11 blank · 1 comment · 0 complexity · 8936c17c855108f66e28ed0ffa9b6088 MD5 · raw file

  1. #ifndef _LINUX_BUG_H
  2. #define _LINUX_BUG_H
  3. #include <asm/bug.h>
  4. enum bug_trap_type {
  5. BUG_TRAP_TYPE_NONE = 0,
  6. BUG_TRAP_TYPE_WARN = 1,
  7. BUG_TRAP_TYPE_BUG = 2,
  8. };
  9. struct pt_regs;
  10. #ifdef CONFIG_GENERIC_BUG
  11. #include <asm-generic/bug.h>
  12. static inline int is_warning_bug(const struct bug_entry *bug)
  13. {
  14. return bug->flags & BUGFLAG_WARNING;
  15. }
  16. const struct bug_entry *find_bug(unsigned long bugaddr);
  17. enum bug_trap_type report_bug(unsigned long bug_addr, struct pt_regs *regs);
  18. /* These are defined by the architecture */
  19. int is_valid_bugaddr(unsigned long addr);
  20. #else /* !CONFIG_GENERIC_BUG */
  21. static inline enum bug_trap_type report_bug(unsigned long bug_addr,
  22. struct pt_regs *regs)
  23. {
  24. return BUG_TRAP_TYPE_BUG;
  25. }
  26. #endif /* CONFIG_GENERIC_BUG */
  27. #endif /* _LINUX_BUG_H */