fault.h 1.0 KB

12345678910111213141516171819202122232425262728293031
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. #undef TRACE_SYSTEM
  3. #define TRACE_SYSTEM fault
  4. #define TRACE_INCLUDE_PATH trace/hooks
  5. #if !defined(_TRACE_HOOK_FAULT_H) || defined(TRACE_HEADER_MULTI_READ)
  6. #define _TRACE_HOOK_FAULT_H
  7. #include <trace/hooks/vendor_hooks.h>
  8. struct pt_regs;
  9. DECLARE_RESTRICTED_HOOK(android_rvh_die_kernel_fault,
  10. TP_PROTO(const char *msg, unsigned long addr, unsigned long esr, struct pt_regs *regs),
  11. TP_ARGS(msg, addr, esr, regs), 1);
  12. DECLARE_RESTRICTED_HOOK(android_rvh_do_sea,
  13. TP_PROTO(unsigned long addr, unsigned long esr, struct pt_regs *regs),
  14. TP_ARGS(addr, esr, regs), 1);
  15. DECLARE_RESTRICTED_HOOK(android_rvh_do_sp_pc_abort,
  16. TP_PROTO(unsigned long addr, unsigned long esr, struct pt_regs *regs),
  17. TP_ARGS(addr, esr, regs),
  18. TP_CONDITION(!user_mode(regs)));
  19. DECLARE_HOOK(android_vh_try_fixup_sea,
  20. TP_PROTO(unsigned long addr, unsigned long esr, struct pt_regs *regs,
  21. bool *can_fixup),
  22. TP_ARGS(addr, esr, regs, can_fixup));
  23. #endif /* _TRACE_HOOK_FAULT_H */
  24. /* This part must be outside protection */
  25. #include <trace/define_trace.h>