thp.h 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. #undef TRACE_SYSTEM
  3. #define TRACE_SYSTEM thp
  4. #if !defined(_TRACE_THP_H) || defined(TRACE_HEADER_MULTI_READ)
  5. #define _TRACE_THP_H
  6. #include <linux/types.h>
  7. #include <linux/tracepoint.h>
  8. TRACE_EVENT(hugepage_set_pmd,
  9. TP_PROTO(unsigned long addr, unsigned long pmd),
  10. TP_ARGS(addr, pmd),
  11. TP_STRUCT__entry(
  12. __field(unsigned long, addr)
  13. __field(unsigned long, pmd)
  14. ),
  15. TP_fast_assign(
  16. __entry->addr = addr;
  17. __entry->pmd = pmd;
  18. ),
  19. TP_printk("Set pmd with 0x%lx with 0x%lx", __entry->addr, __entry->pmd)
  20. );
  21. TRACE_EVENT(hugepage_update,
  22. TP_PROTO(unsigned long addr, unsigned long pte, unsigned long clr, unsigned long set),
  23. TP_ARGS(addr, pte, clr, set),
  24. TP_STRUCT__entry(
  25. __field(unsigned long, addr)
  26. __field(unsigned long, pte)
  27. __field(unsigned long, clr)
  28. __field(unsigned long, set)
  29. ),
  30. TP_fast_assign(
  31. __entry->addr = addr;
  32. __entry->pte = pte;
  33. __entry->clr = clr;
  34. __entry->set = set;
  35. ),
  36. TP_printk("hugepage update at addr 0x%lx and pte = 0x%lx clr = 0x%lx, set = 0x%lx", __entry->addr, __entry->pte, __entry->clr, __entry->set)
  37. );
  38. DECLARE_EVENT_CLASS(migration_pmd,
  39. TP_PROTO(unsigned long addr, unsigned long pmd),
  40. TP_ARGS(addr, pmd),
  41. TP_STRUCT__entry(
  42. __field(unsigned long, addr)
  43. __field(unsigned long, pmd)
  44. ),
  45. TP_fast_assign(
  46. __entry->addr = addr;
  47. __entry->pmd = pmd;
  48. ),
  49. TP_printk("addr=%lx, pmd=%lx", __entry->addr, __entry->pmd)
  50. );
  51. DEFINE_EVENT(migration_pmd, set_migration_pmd,
  52. TP_PROTO(unsigned long addr, unsigned long pmd),
  53. TP_ARGS(addr, pmd)
  54. );
  55. DEFINE_EVENT(migration_pmd, remove_migration_pmd,
  56. TP_PROTO(unsigned long addr, unsigned long pmd),
  57. TP_ARGS(addr, pmd)
  58. );
  59. #endif /* _TRACE_THP_H */
  60. /* This part must be outside protection */
  61. #include <trace/define_trace.h>