Skip to content

Commit

Permalink
tracing: Convert some jbd2 events to DEFINE_EVENT
Browse files Browse the repository at this point in the history
Use DECLARE_EVENT_CLASS to remove duplicate code:

   text    data     bss     dec     hex filename
  34903    1693     448   37044    90b4 fs/jbd2/journal.o.old
  31931    1693     416   34040    84f8 fs/jbd2/journal.o

Four events are converted:

  jbd2_commit: jbd2_start_commit,
               jbd2_commit_{locking, flushing, logging}

No change in functionality.

Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
Cc: Theodore Ts'o <tytso@mit.edu>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
LKML-Reference: <4B0E290F.7030909@cn.fujitsu.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
  • Loading branch information
Li Zefan authored and Ingo Molnar committed Nov 26, 2009
1 parent 77ca1e0 commit 071688f
Showing 1 changed file with 11 additions and 52 deletions.
63 changes: 11 additions & 52 deletions include/trace/events/jbd2.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ TRACE_EVENT(jbd2_checkpoint,
jbd2_dev_to_name(__entry->dev), __entry->result)
);

TRACE_EVENT(jbd2_start_commit,
DECLARE_EVENT_CLASS(jbd2_commit,

TP_PROTO(journal_t *journal, transaction_t *commit_transaction),

Expand All @@ -53,73 +53,32 @@ TRACE_EVENT(jbd2_start_commit,
__entry->sync_commit)
);

TRACE_EVENT(jbd2_commit_locking,
DEFINE_EVENT(jbd2_commit, jbd2_start_commit,

TP_PROTO(journal_t *journal, transaction_t *commit_transaction),

TP_ARGS(journal, commit_transaction),

TP_STRUCT__entry(
__field( dev_t, dev )
__field( char, sync_commit )
__field( int, transaction )
),

TP_fast_assign(
__entry->dev = journal->j_fs_dev->bd_dev;
__entry->sync_commit = commit_transaction->t_synchronous_commit;
__entry->transaction = commit_transaction->t_tid;
),

TP_printk("dev %s transaction %d sync %d",
jbd2_dev_to_name(__entry->dev), __entry->transaction,
__entry->sync_commit)
TP_ARGS(journal, commit_transaction)
);

TRACE_EVENT(jbd2_commit_flushing,
DEFINE_EVENT(jbd2_commit, jbd2_commit_locking,

TP_PROTO(journal_t *journal, transaction_t *commit_transaction),

TP_ARGS(journal, commit_transaction),

TP_STRUCT__entry(
__field( dev_t, dev )
__field( char, sync_commit )
__field( int, transaction )
),

TP_fast_assign(
__entry->dev = journal->j_fs_dev->bd_dev;
__entry->sync_commit = commit_transaction->t_synchronous_commit;
__entry->transaction = commit_transaction->t_tid;
),

TP_printk("dev %s transaction %d sync %d",
jbd2_dev_to_name(__entry->dev), __entry->transaction,
__entry->sync_commit)
TP_ARGS(journal, commit_transaction)
);

TRACE_EVENT(jbd2_commit_logging,
DEFINE_EVENT(jbd2_commit, jbd2_commit_flushing,

TP_PROTO(journal_t *journal, transaction_t *commit_transaction),

TP_ARGS(journal, commit_transaction),
TP_ARGS(journal, commit_transaction)
);

TP_STRUCT__entry(
__field( dev_t, dev )
__field( char, sync_commit )
__field( int, transaction )
),
DEFINE_EVENT(jbd2_commit, jbd2_commit_logging,

TP_fast_assign(
__entry->dev = journal->j_fs_dev->bd_dev;
__entry->sync_commit = commit_transaction->t_synchronous_commit;
__entry->transaction = commit_transaction->t_tid;
),
TP_PROTO(journal_t *journal, transaction_t *commit_transaction),

TP_printk("dev %s transaction %d sync %d",
jbd2_dev_to_name(__entry->dev), __entry->transaction,
__entry->sync_commit)
TP_ARGS(journal, commit_transaction)
);

TRACE_EVENT(jbd2_end_commit,
Expand Down

0 comments on commit 071688f

Please sign in to comment.