watchdog.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. #undef TRACE_SYSTEM
  3. #define TRACE_SYSTEM watchdog
  4. #if !defined(_TRACE_WATCHDOG_H) || defined(TRACE_HEADER_MULTI_READ)
  5. #define _TRACE_WATCHDOG_H
  6. #include <linux/watchdog.h>
  7. #include <linux/tracepoint.h>
  8. DECLARE_EVENT_CLASS(watchdog_template,
  9. TP_PROTO(struct watchdog_device *wdd, int err),
  10. TP_ARGS(wdd, err),
  11. TP_STRUCT__entry(
  12. __field(int, id)
  13. __field(int, err)
  14. ),
  15. TP_fast_assign(
  16. __entry->id = wdd->id;
  17. __entry->err = err;
  18. ),
  19. TP_printk("watchdog%d err=%d", __entry->id, __entry->err)
  20. );
  21. DEFINE_EVENT(watchdog_template, watchdog_start,
  22. TP_PROTO(struct watchdog_device *wdd, int err),
  23. TP_ARGS(wdd, err));
  24. DEFINE_EVENT(watchdog_template, watchdog_ping,
  25. TP_PROTO(struct watchdog_device *wdd, int err),
  26. TP_ARGS(wdd, err));
  27. DEFINE_EVENT(watchdog_template, watchdog_stop,
  28. TP_PROTO(struct watchdog_device *wdd, int err),
  29. TP_ARGS(wdd, err));
  30. TRACE_EVENT(watchdog_set_timeout,
  31. TP_PROTO(struct watchdog_device *wdd, unsigned int timeout, int err),
  32. TP_ARGS(wdd, timeout, err),
  33. TP_STRUCT__entry(
  34. __field(int, id)
  35. __field(unsigned int, timeout)
  36. __field(int, err)
  37. ),
  38. TP_fast_assign(
  39. __entry->id = wdd->id;
  40. __entry->timeout = timeout;
  41. __entry->err = err;
  42. ),
  43. TP_printk("watchdog%d timeout=%u err=%d", __entry->id, __entry->timeout, __entry->err)
  44. );
  45. #endif /* !defined(_TRACE_WATCHDOG_H) || defined(TRACE_HEADER_MULTI_READ) */
  46. /* This part must be outside protection */
  47. #include <trace/define_trace.h>