b851f0b4701cf6bc8c1497003025e2c877d32142
[safe/jmp/linux-2.6] / include / trace / events / jbd2.h
1 #undef TRACE_SYSTEM
2 #define TRACE_SYSTEM jbd2
3
4 #if !defined(_TRACE_JBD2_H) || defined(TRACE_HEADER_MULTI_READ)
5 #define _TRACE_JBD2_H
6
7 #include <linux/jbd2.h>
8 #include <linux/tracepoint.h>
9
10 TRACE_EVENT(jbd2_checkpoint,
11
12         TP_PROTO(journal_t *journal, int result),
13
14         TP_ARGS(journal, result),
15
16         TP_STRUCT__entry(
17                 __field(        dev_t,  dev                     )
18                 __field(        int,    result                  )
19         ),
20
21         TP_fast_assign(
22                 __entry->dev            = journal->j_fs_dev->bd_dev;
23                 __entry->result         = result;
24         ),
25
26         TP_printk("dev %s result %d",
27                   jbd2_dev_to_name(__entry->dev), __entry->result)
28 );
29
30 TRACE_EVENT(jbd2_start_commit,
31
32         TP_PROTO(journal_t *journal, transaction_t *commit_transaction),
33
34         TP_ARGS(journal, commit_transaction),
35
36         TP_STRUCT__entry(
37                 __field(        dev_t,  dev                     )
38                 __field(        char,   sync_commit               )
39                 __field(        int,    transaction               )
40         ),
41
42         TP_fast_assign(
43                 __entry->dev            = journal->j_fs_dev->bd_dev;
44                 __entry->sync_commit = commit_transaction->t_synchronous_commit;
45                 __entry->transaction    = commit_transaction->t_tid;
46         ),
47
48         TP_printk("dev %s transaction %d sync %d",
49                   jbd2_dev_to_name(__entry->dev), __entry->transaction,
50                   __entry->sync_commit)
51 );
52
53 TRACE_EVENT(jbd2_commit_locking,
54
55         TP_PROTO(journal_t *journal, transaction_t *commit_transaction),
56
57         TP_ARGS(journal, commit_transaction),
58
59         TP_STRUCT__entry(
60                 __field(        dev_t,  dev                     )
61                 __field(        char,   sync_commit               )
62                 __field(        int,    transaction               )
63         ),
64
65         TP_fast_assign(
66                 __entry->dev            = journal->j_fs_dev->bd_dev;
67                 __entry->sync_commit = commit_transaction->t_synchronous_commit;
68                 __entry->transaction    = commit_transaction->t_tid;
69         ),
70
71         TP_printk("dev %s transaction %d sync %d",
72                   jbd2_dev_to_name(__entry->dev), __entry->transaction,
73                   __entry->sync_commit)
74 );
75
76 TRACE_EVENT(jbd2_commit_flushing,
77
78         TP_PROTO(journal_t *journal, transaction_t *commit_transaction),
79
80         TP_ARGS(journal, commit_transaction),
81
82         TP_STRUCT__entry(
83                 __field(        dev_t,  dev                     )
84                 __field(        char,   sync_commit               )
85                 __field(        int,    transaction               )
86         ),
87
88         TP_fast_assign(
89                 __entry->dev            = journal->j_fs_dev->bd_dev;
90                 __entry->sync_commit = commit_transaction->t_synchronous_commit;
91                 __entry->transaction    = commit_transaction->t_tid;
92         ),
93
94         TP_printk("dev %s transaction %d sync %d",
95                   jbd2_dev_to_name(__entry->dev), __entry->transaction,
96                   __entry->sync_commit)
97 );
98
99 TRACE_EVENT(jbd2_commit_logging,
100
101         TP_PROTO(journal_t *journal, transaction_t *commit_transaction),
102
103         TP_ARGS(journal, commit_transaction),
104
105         TP_STRUCT__entry(
106                 __field(        dev_t,  dev                     )
107                 __field(        char,   sync_commit               )
108                 __field(        int,    transaction               )
109         ),
110
111         TP_fast_assign(
112                 __entry->dev            = journal->j_fs_dev->bd_dev;
113                 __entry->sync_commit = commit_transaction->t_synchronous_commit;
114                 __entry->transaction    = commit_transaction->t_tid;
115         ),
116
117         TP_printk("dev %s transaction %d sync %d",
118                   jbd2_dev_to_name(__entry->dev), __entry->transaction,
119                   __entry->sync_commit)
120 );
121
122 TRACE_EVENT(jbd2_end_commit,
123         TP_PROTO(journal_t *journal, transaction_t *commit_transaction),
124
125         TP_ARGS(journal, commit_transaction),
126
127         TP_STRUCT__entry(
128                 __field(        dev_t,  dev                     )
129                 __field(        char,   sync_commit               )
130                 __field(        int,    transaction               )
131                 __field(        int,    head                      )
132         ),
133
134         TP_fast_assign(
135                 __entry->dev            = journal->j_fs_dev->bd_dev;
136                 __entry->sync_commit = commit_transaction->t_synchronous_commit;
137                 __entry->transaction    = commit_transaction->t_tid;
138                 __entry->head           = journal->j_tail_sequence;
139         ),
140
141         TP_printk("dev %s transaction %d sync %d head %d",
142                   jbd2_dev_to_name(__entry->dev), __entry->transaction,
143                   __entry->sync_commit, __entry->head)
144 );
145
146 TRACE_EVENT(jbd2_submit_inode_data,
147         TP_PROTO(struct inode *inode),
148
149         TP_ARGS(inode),
150
151         TP_STRUCT__entry(
152                 __field(        dev_t,  dev                     )
153                 __field(        ino_t,  ino                     )
154         ),
155
156         TP_fast_assign(
157                 __entry->dev    = inode->i_sb->s_dev;
158                 __entry->ino    = inode->i_ino;
159         ),
160
161         TP_printk("dev %s ino %lu",
162                   jbd2_dev_to_name(__entry->dev), (unsigned long) __entry->ino)
163 );
164
165 #endif /* _TRACE_JBD2_H */
166
167 /* This part must be outside protection */
168 #include <trace/define_trace.h>