diff options
-rw-r--r-- | fs/jbd2/checkpoint.c | 2 | ||||
-rw-r--r-- | fs/jbd2/journal.c | 2 | ||||
-rw-r--r-- | include/trace/events/jbd2.h | 28 |
3 files changed, 32 insertions, 0 deletions
diff --git a/fs/jbd2/checkpoint.c b/fs/jbd2/checkpoint.c index d49d202903fb..453c9068b7d7 100644 --- a/fs/jbd2/checkpoint.c +++ b/fs/jbd2/checkpoint.c | |||
@@ -797,5 +797,7 @@ void __jbd2_journal_drop_transaction(journal_t *journal, transaction_t *transact | |||
797 | J_ASSERT(journal->j_committing_transaction != transaction); | 797 | J_ASSERT(journal->j_committing_transaction != transaction); |
798 | J_ASSERT(journal->j_running_transaction != transaction); | 798 | J_ASSERT(journal->j_running_transaction != transaction); |
799 | 799 | ||
800 | trace_jbd2_drop_transaction(journal, transaction); | ||
801 | |||
800 | jbd_debug(1, "Dropping transaction %d, all done\n", transaction->t_tid); | 802 | jbd_debug(1, "Dropping transaction %d, all done\n", transaction->t_tid); |
801 | } | 803 | } |
diff --git a/fs/jbd2/journal.c b/fs/jbd2/journal.c index c0a5f9f1b127..93a595c69616 100644 --- a/fs/jbd2/journal.c +++ b/fs/jbd2/journal.c | |||
@@ -1185,6 +1185,8 @@ void jbd2_journal_update_superblock(journal_t *journal, int wait) | |||
1185 | } else | 1185 | } else |
1186 | write_dirty_buffer(bh, WRITE); | 1186 | write_dirty_buffer(bh, WRITE); |
1187 | 1187 | ||
1188 | trace_jbd2_update_superblock_end(journal, wait); | ||
1189 | |||
1188 | out: | 1190 | out: |
1189 | /* If we have just flushed the log (by marking s_start==0), then | 1191 | /* If we have just flushed the log (by marking s_start==0), then |
1190 | * any future commit will have to be careful to update the | 1192 | * any future commit will have to be careful to update the |
diff --git a/include/trace/events/jbd2.h b/include/trace/events/jbd2.h index 75964412ddbb..ae59bc207d70 100644 --- a/include/trace/events/jbd2.h +++ b/include/trace/events/jbd2.h | |||
@@ -81,6 +81,13 @@ DEFINE_EVENT(jbd2_commit, jbd2_commit_logging, | |||
81 | TP_ARGS(journal, commit_transaction) | 81 | TP_ARGS(journal, commit_transaction) |
82 | ); | 82 | ); |
83 | 83 | ||
84 | DEFINE_EVENT(jbd2_commit, jbd2_drop_transaction, | ||
85 | |||
86 | TP_PROTO(journal_t *journal, transaction_t *commit_transaction), | ||
87 | |||
88 | TP_ARGS(journal, commit_transaction) | ||
89 | ); | ||
90 | |||
84 | TRACE_EVENT(jbd2_end_commit, | 91 | TRACE_EVENT(jbd2_end_commit, |
85 | TP_PROTO(journal_t *journal, transaction_t *commit_transaction), | 92 | TP_PROTO(journal_t *journal, transaction_t *commit_transaction), |
86 | 93 | ||
@@ -229,6 +236,27 @@ TRACE_EVENT(jbd2_cleanup_journal_tail, | |||
229 | __entry->block_nr, __entry->freed) | 236 | __entry->block_nr, __entry->freed) |
230 | ); | 237 | ); |
231 | 238 | ||
239 | TRACE_EVENT(jbd2_update_superblock_end, | ||
240 | |||
241 | TP_PROTO(journal_t *journal, int wait), | ||
242 | |||
243 | TP_ARGS(journal, wait), | ||
244 | |||
245 | TP_STRUCT__entry( | ||
246 | __field( dev_t, dev ) | ||
247 | __field( int, wait ) | ||
248 | ), | ||
249 | |||
250 | TP_fast_assign( | ||
251 | __entry->dev = journal->j_fs_dev->bd_dev; | ||
252 | __entry->wait = wait; | ||
253 | ), | ||
254 | |||
255 | TP_printk("dev %d,%d wait %d", | ||
256 | MAJOR(__entry->dev), MINOR(__entry->dev), | ||
257 | __entry->wait) | ||
258 | ); | ||
259 | |||
232 | #endif /* _TRACE_JBD2_H */ | 260 | #endif /* _TRACE_JBD2_H */ |
233 | 261 | ||
234 | /* This part must be outside protection */ | 262 | /* This part must be outside protection */ |