jbd2.h 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  1. #undef TRACE_SYSTEM
  2. #define TRACE_SYSTEM jbd2
  3. #if !defined(_TRACE_JBD2_H) || defined(TRACE_HEADER_MULTI_READ)
  4. #define _TRACE_JBD2_H
  5. #include <linux/jbd2.h>
  6. #include <linux/tracepoint.h>
  7. TRACE_EVENT(jbd2_checkpoint,
  8. TP_PROTO(journal_t *journal, int result),
  9. TP_ARGS(journal, result),
  10. TP_STRUCT__entry(
  11. __field( dev_t, dev )
  12. __field( int, result )
  13. ),
  14. TP_fast_assign(
  15. __entry->dev = journal->j_fs_dev->bd_dev;
  16. __entry->result = result;
  17. ),
  18. TP_printk("dev %s result %d",
  19. jbd2_dev_to_name(__entry->dev), __entry->result)
  20. );
  21. TRACE_EVENT(jbd2_start_commit,
  22. TP_PROTO(journal_t *journal, transaction_t *commit_transaction),
  23. TP_ARGS(journal, commit_transaction),
  24. TP_STRUCT__entry(
  25. __field( dev_t, dev )
  26. __field( char, sync_commit )
  27. __field( int, transaction )
  28. ),
  29. TP_fast_assign(
  30. __entry->dev = journal->j_fs_dev->bd_dev;
  31. __entry->sync_commit = commit_transaction->t_synchronous_commit;
  32. __entry->transaction = commit_transaction->t_tid;
  33. ),
  34. TP_printk("dev %s transaction %d sync %d",
  35. jbd2_dev_to_name(__entry->dev), __entry->transaction,
  36. __entry->sync_commit)
  37. );
  38. TRACE_EVENT(jbd2_commit_locking,
  39. TP_PROTO(journal_t *journal, transaction_t *commit_transaction),
  40. TP_ARGS(journal, commit_transaction),
  41. TP_STRUCT__entry(
  42. __field( dev_t, dev )
  43. __field( char, sync_commit )
  44. __field( int, transaction )
  45. ),
  46. TP_fast_assign(
  47. __entry->dev = journal->j_fs_dev->bd_dev;
  48. __entry->sync_commit = commit_transaction->t_synchronous_commit;
  49. __entry->transaction = commit_transaction->t_tid;
  50. ),
  51. TP_printk("dev %s transaction %d sync %d",
  52. jbd2_dev_to_name(__entry->dev), __entry->transaction,
  53. __entry->sync_commit)
  54. );
  55. TRACE_EVENT(jbd2_commit_flushing,
  56. TP_PROTO(journal_t *journal, transaction_t *commit_transaction),
  57. TP_ARGS(journal, commit_transaction),
  58. TP_STRUCT__entry(
  59. __field( dev_t, dev )
  60. __field( char, sync_commit )
  61. __field( int, transaction )
  62. ),
  63. TP_fast_assign(
  64. __entry->dev = journal->j_fs_dev->bd_dev;
  65. __entry->sync_commit = commit_transaction->t_synchronous_commit;
  66. __entry->transaction = commit_transaction->t_tid;
  67. ),
  68. TP_printk("dev %s transaction %d sync %d",
  69. jbd2_dev_to_name(__entry->dev), __entry->transaction,
  70. __entry->sync_commit)
  71. );
  72. TRACE_EVENT(jbd2_commit_logging,
  73. TP_PROTO(journal_t *journal, transaction_t *commit_transaction),
  74. TP_ARGS(journal, commit_transaction),
  75. TP_STRUCT__entry(
  76. __field( dev_t, dev )
  77. __field( char, sync_commit )
  78. __field( int, transaction )
  79. ),
  80. TP_fast_assign(
  81. __entry->dev = journal->j_fs_dev->bd_dev;
  82. __entry->sync_commit = commit_transaction->t_synchronous_commit;
  83. __entry->transaction = commit_transaction->t_tid;
  84. ),
  85. TP_printk("dev %s transaction %d sync %d",
  86. jbd2_dev_to_name(__entry->dev), __entry->transaction,
  87. __entry->sync_commit)
  88. );
  89. TRACE_EVENT(jbd2_end_commit,
  90. TP_PROTO(journal_t *journal, transaction_t *commit_transaction),
  91. TP_ARGS(journal, commit_transaction),
  92. TP_STRUCT__entry(
  93. __field( dev_t, dev )
  94. __field( char, sync_commit )
  95. __field( int, transaction )
  96. __field( int, head )
  97. ),
  98. TP_fast_assign(
  99. __entry->dev = journal->j_fs_dev->bd_dev;
  100. __entry->sync_commit = commit_transaction->t_synchronous_commit;
  101. __entry->transaction = commit_transaction->t_tid;
  102. __entry->head = journal->j_tail_sequence;
  103. ),
  104. TP_printk("dev %s transaction %d sync %d head %d",
  105. jbd2_dev_to_name(__entry->dev), __entry->transaction,
  106. __entry->sync_commit, __entry->head)
  107. );
  108. TRACE_EVENT(jbd2_submit_inode_data,
  109. TP_PROTO(struct inode *inode),
  110. TP_ARGS(inode),
  111. TP_STRUCT__entry(
  112. __field( dev_t, dev )
  113. __field( ino_t, ino )
  114. ),
  115. TP_fast_assign(
  116. __entry->dev = inode->i_sb->s_dev;
  117. __entry->ino = inode->i_ino;
  118. ),
  119. TP_printk("dev %s ino %lu",
  120. jbd2_dev_to_name(__entry->dev), __entry->ino)
  121. );
  122. #endif /* _TRACE_JBD2_H */
  123. /* This part must be outside protection */
  124. #include <trace/define_trace.h>