Version 2.9.6
[lttng-modules.git] / instrumentation / events / lttng-module / ext3.h
CommitLineData
b283666f
PW
1#undef TRACE_SYSTEM
2#define TRACE_SYSTEM ext3
3
3bc29f0a
MD
4#if !defined(LTTNG_TRACE_EXT3_H) || defined(TRACE_HEADER_MULTI_READ)
5#define LTTNG_TRACE_EXT3_H
b283666f 6
6ec43db8 7#include <probes/lttng-tracepoint-event.h>
7c68b363 8#include <linux/version.h>
b283666f 9
3bc29f0a 10LTTNG_TRACEPOINT_EVENT(ext3_free_inode,
b283666f
PW
11 TP_PROTO(struct inode *inode),
12
13 TP_ARGS(inode),
14
f127e61e
MD
15 TP_FIELDS(
16 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
17 ctf_integer(ino_t, ino, inode->i_ino)
18 ctf_integer(umode_t, mode, inode->i_mode)
7c68b363 19#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
f127e61e
MD
20 ctf_integer(uid_t, uid, i_uid_read(inode))
21 ctf_integer(gid_t, gid, i_gid_read(inode))
7c68b363 22#else
f127e61e
MD
23 ctf_integer(uid_t, uid, inode->i_uid)
24 ctf_integer(gid_t, gid, inode->i_gid)
7c68b363 25#endif
f127e61e
MD
26 ctf_integer(blkcnt_t, blocks, inode->i_blocks)
27 )
b283666f
PW
28)
29
3bc29f0a 30LTTNG_TRACEPOINT_EVENT(ext3_request_inode,
b283666f
PW
31 TP_PROTO(struct inode *dir, int mode),
32
33 TP_ARGS(dir, mode),
34
f127e61e
MD
35 TP_FIELDS(
36 ctf_integer(dev_t, dev, dir->i_sb->s_dev)
37 ctf_integer(ino_t, dir, dir->i_ino)
38 ctf_integer(umode_t, mode, mode)
39 )
b283666f
PW
40)
41
3bc29f0a 42LTTNG_TRACEPOINT_EVENT(ext3_allocate_inode,
b283666f
PW
43 TP_PROTO(struct inode *inode, struct inode *dir, int mode),
44
45 TP_ARGS(inode, dir, mode),
46
f127e61e
MD
47 TP_FIELDS(
48 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
49 ctf_integer(ino_t, ino, inode->i_ino)
50 ctf_integer(ino_t, dir, dir->i_ino)
51 ctf_integer(umode_t, mode, mode)
52 )
b283666f
PW
53)
54
3bc29f0a 55LTTNG_TRACEPOINT_EVENT(ext3_evict_inode,
b283666f
PW
56 TP_PROTO(struct inode *inode),
57
58 TP_ARGS(inode),
59
f127e61e
MD
60 TP_FIELDS(
61 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
62 ctf_integer(ino_t, ino, inode->i_ino)
63 ctf_integer(int, nlink, inode->i_nlink)
64 )
b283666f
PW
65)
66
3bc29f0a 67LTTNG_TRACEPOINT_EVENT(ext3_drop_inode,
b283666f
PW
68 TP_PROTO(struct inode *inode, int drop),
69
70 TP_ARGS(inode, drop),
71
f127e61e
MD
72 TP_FIELDS(
73 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
74 ctf_integer(ino_t, ino, inode->i_ino)
75 ctf_integer(int, drop, drop)
76 )
b283666f
PW
77)
78
3bc29f0a 79LTTNG_TRACEPOINT_EVENT(ext3_mark_inode_dirty,
b283666f
PW
80 TP_PROTO(struct inode *inode, unsigned long IP),
81
82 TP_ARGS(inode, IP),
83
f127e61e
MD
84 TP_FIELDS(
85 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
86 ctf_integer(ino_t, ino, inode->i_ino)
87 ctf_integer(unsigned long, ip, IP)
88 )
b283666f
PW
89)
90
3bc29f0a 91LTTNG_TRACEPOINT_EVENT(ext3_write_begin,
b283666f
PW
92 TP_PROTO(struct inode *inode, loff_t pos, unsigned int len,
93 unsigned int flags),
94
95 TP_ARGS(inode, pos, len, flags),
96
f127e61e
MD
97 TP_FIELDS(
98 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
99 ctf_integer(ino_t, ino, inode->i_ino)
100 ctf_integer(loff_t, pos, pos)
101 ctf_integer(unsigned int, len, len)
102 ctf_integer(unsigned int, flags, flags)
103 )
b283666f
PW
104)
105
3bc29f0a 106LTTNG_TRACEPOINT_EVENT_CLASS(ext3__write_end,
b283666f
PW
107 TP_PROTO(struct inode *inode, loff_t pos, unsigned int len,
108 unsigned int copied),
109
110 TP_ARGS(inode, pos, len, copied),
111
f127e61e
MD
112 TP_FIELDS(
113 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
114 ctf_integer(ino_t, ino, inode->i_ino)
115 ctf_integer(loff_t, pos, pos)
116 ctf_integer(unsigned int, len, len)
117 ctf_integer(unsigned int, copied, copied)
118 )
b283666f
PW
119)
120
3bc29f0a 121LTTNG_TRACEPOINT_EVENT_INSTANCE(ext3__write_end, ext3_ordered_write_end,
b283666f
PW
122
123 TP_PROTO(struct inode *inode, loff_t pos, unsigned int len,
124 unsigned int copied),
125
126 TP_ARGS(inode, pos, len, copied)
127)
128
3bc29f0a 129LTTNG_TRACEPOINT_EVENT_INSTANCE(ext3__write_end, ext3_writeback_write_end,
b283666f
PW
130
131 TP_PROTO(struct inode *inode, loff_t pos, unsigned int len,
132 unsigned int copied),
133
134 TP_ARGS(inode, pos, len, copied)
135)
136
3bc29f0a 137LTTNG_TRACEPOINT_EVENT_INSTANCE(ext3__write_end, ext3_journalled_write_end,
b283666f
PW
138
139 TP_PROTO(struct inode *inode, loff_t pos, unsigned int len,
140 unsigned int copied),
141
142 TP_ARGS(inode, pos, len, copied)
143)
144
3bc29f0a 145LTTNG_TRACEPOINT_EVENT_CLASS(ext3__page_op,
b283666f
PW
146 TP_PROTO(struct page *page),
147
148 TP_ARGS(page),
149
f127e61e
MD
150 TP_FIELDS(
151 ctf_integer(dev_t, dev, page->mapping->host->i_sb->s_dev)
152 ctf_integer(ino_t, ino, page->mapping->host->i_ino)
153 ctf_integer(pgoff_t, index, page->index)
154 )
b283666f
PW
155)
156
3bc29f0a 157LTTNG_TRACEPOINT_EVENT_INSTANCE(ext3__page_op, ext3_ordered_writepage,
b283666f
PW
158
159 TP_PROTO(struct page *page),
160
161 TP_ARGS(page)
162)
163
3bc29f0a 164LTTNG_TRACEPOINT_EVENT_INSTANCE(ext3__page_op, ext3_writeback_writepage,
b283666f
PW
165
166 TP_PROTO(struct page *page),
167
168 TP_ARGS(page)
169)
170
3bc29f0a 171LTTNG_TRACEPOINT_EVENT_INSTANCE(ext3__page_op, ext3_journalled_writepage,
b283666f
PW
172
173 TP_PROTO(struct page *page),
174
175 TP_ARGS(page)
176)
177
3bc29f0a 178LTTNG_TRACEPOINT_EVENT_INSTANCE(ext3__page_op, ext3_readpage,
b283666f
PW
179
180 TP_PROTO(struct page *page),
181
182 TP_ARGS(page)
183)
184
3bc29f0a 185LTTNG_TRACEPOINT_EVENT_INSTANCE(ext3__page_op, ext3_releasepage,
b283666f
PW
186
187 TP_PROTO(struct page *page),
188
189 TP_ARGS(page)
190)
191
058f9b3c
MD
192#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0))
193
3bc29f0a 194LTTNG_TRACEPOINT_EVENT(ext3_invalidatepage,
058f9b3c
MD
195 TP_PROTO(struct page *page, unsigned int offset, unsigned int length),
196
197 TP_ARGS(page, offset, length),
198
f127e61e
MD
199 TP_FIELDS(
200 ctf_integer(pgoff_t, index, page->index)
201 ctf_integer(unsigned int, offset, offset)
202 ctf_integer(unsigned int, length, length)
203 ctf_integer(ino_t, ino, page->mapping->host->i_ino)
204 ctf_integer(dev_t, dev, page->mapping->host->i_sb->s_dev)
205 )
058f9b3c
MD
206)
207
208#else
209
3bc29f0a 210LTTNG_TRACEPOINT_EVENT(ext3_invalidatepage,
b283666f
PW
211 TP_PROTO(struct page *page, unsigned long offset),
212
213 TP_ARGS(page, offset),
214
f127e61e
MD
215 TP_FIELDS(
216 ctf_integer(pgoff_t, index, page->index)
217 ctf_integer(unsigned long, offset, offset)
218 ctf_integer(ino_t, ino, page->mapping->host->i_ino)
219 ctf_integer(dev_t, dev, page->mapping->host->i_sb->s_dev)
220 )
b283666f
PW
221)
222
058f9b3c
MD
223#endif
224
3bc29f0a 225LTTNG_TRACEPOINT_EVENT(ext3_discard_blocks,
b283666f
PW
226 TP_PROTO(struct super_block *sb, unsigned long blk,
227 unsigned long count),
228
229 TP_ARGS(sb, blk, count),
230
f127e61e
MD
231 TP_FIELDS(
232 ctf_integer(dev_t, dev, sb->s_dev)
233 ctf_integer(unsigned long, blk, blk)
234 ctf_integer(unsigned long, count, count)
235 )
b283666f
PW
236)
237
3bc29f0a 238LTTNG_TRACEPOINT_EVENT(ext3_request_blocks,
b283666f
PW
239 TP_PROTO(struct inode *inode, unsigned long goal,
240 unsigned long count),
241
242 TP_ARGS(inode, goal, count),
243
f127e61e
MD
244 TP_FIELDS(
245 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
246 ctf_integer(ino_t, ino, inode->i_ino)
247 ctf_integer(unsigned long, count, count)
248 ctf_integer(unsigned long, goal, goal)
249 )
b283666f
PW
250)
251
3bc29f0a 252LTTNG_TRACEPOINT_EVENT(ext3_allocate_blocks,
b283666f
PW
253 TP_PROTO(struct inode *inode, unsigned long goal,
254 unsigned long count, unsigned long block),
255
256 TP_ARGS(inode, goal, count, block),
257
f127e61e
MD
258 TP_FIELDS(
259 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
260 ctf_integer(ino_t, ino, inode->i_ino)
261 ctf_integer(unsigned long, block, block)
262 ctf_integer(unsigned long, count, count)
263 ctf_integer(unsigned long, goal, goal)
264 )
b283666f
PW
265)
266
3bc29f0a 267LTTNG_TRACEPOINT_EVENT(ext3_free_blocks,
b283666f
PW
268 TP_PROTO(struct inode *inode, unsigned long block,
269 unsigned long count),
270
271 TP_ARGS(inode, block, count),
272
f127e61e
MD
273 TP_FIELDS(
274 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
275 ctf_integer(ino_t, ino, inode->i_ino)
276 ctf_integer(umode_t, mode, inode->i_mode)
277 ctf_integer(unsigned long, block, block)
278 ctf_integer(unsigned long, count, count)
279 )
b283666f
PW
280)
281
3bc29f0a 282LTTNG_TRACEPOINT_EVENT(ext3_sync_file_enter,
b283666f
PW
283 TP_PROTO(struct file *file, int datasync),
284
285 TP_ARGS(file, datasync),
286
f127e61e
MD
287 TP_FIELDS(
288 ctf_integer(dev_t, dev, file->f_path.dentry->d_inode->i_sb->s_dev)
289 ctf_integer(ino_t, ino, file->f_path.dentry->d_inode->i_ino)
290 ctf_integer(ino_t, parent, file->f_path.dentry->d_parent->d_inode->i_ino)
291 ctf_integer(int, datasync, datasync)
292 )
b283666f
PW
293)
294
3bc29f0a 295LTTNG_TRACEPOINT_EVENT(ext3_sync_file_exit,
b283666f
PW
296 TP_PROTO(struct inode *inode, int ret),
297
298 TP_ARGS(inode, ret),
299
f127e61e
MD
300 TP_FIELDS(
301 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
302 ctf_integer(ino_t, ino, inode->i_ino)
303 ctf_integer(int, ret, ret)
304 )
b283666f
PW
305)
306
3bc29f0a 307LTTNG_TRACEPOINT_EVENT(ext3_sync_fs,
b283666f
PW
308 TP_PROTO(struct super_block *sb, int wait),
309
310 TP_ARGS(sb, wait),
311
f127e61e
MD
312 TP_FIELDS(
313 ctf_integer(dev_t, dev, sb->s_dev)
314 ctf_integer(int, wait, wait)
315 )
b283666f
PW
316)
317
3bc29f0a 318LTTNG_TRACEPOINT_EVENT(ext3_rsv_window_add,
b283666f
PW
319 TP_PROTO(struct super_block *sb,
320 struct ext3_reserve_window_node *rsv_node),
321
322 TP_ARGS(sb, rsv_node),
323
f127e61e
MD
324 TP_FIELDS(
325 ctf_integer(unsigned long, start, rsv_node->rsv_window._rsv_start)
326 ctf_integer(unsigned long, end, rsv_node->rsv_window._rsv_end)
327 ctf_integer(dev_t, dev, sb->s_dev)
328 )
b283666f
PW
329)
330
3bc29f0a 331LTTNG_TRACEPOINT_EVENT(ext3_discard_reservation,
b283666f
PW
332 TP_PROTO(struct inode *inode,
333 struct ext3_reserve_window_node *rsv_node),
334
335 TP_ARGS(inode, rsv_node),
336
f127e61e
MD
337 TP_FIELDS(
338 ctf_integer(unsigned long, start, rsv_node->rsv_window._rsv_start)
339 ctf_integer(unsigned long, end, rsv_node->rsv_window._rsv_end)
340 ctf_integer(ino_t, ino, inode->i_ino)
341 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
342 )
b283666f
PW
343)
344
3bc29f0a 345LTTNG_TRACEPOINT_EVENT(ext3_alloc_new_reservation,
b283666f
PW
346 TP_PROTO(struct super_block *sb, unsigned long goal),
347
348 TP_ARGS(sb, goal),
349
f127e61e
MD
350 TP_FIELDS(
351 ctf_integer(dev_t, dev, sb->s_dev)
352 ctf_integer(unsigned long, goal, goal)
353 )
b283666f
PW
354)
355
3bc29f0a 356LTTNG_TRACEPOINT_EVENT(ext3_reserved,
b283666f
PW
357 TP_PROTO(struct super_block *sb, unsigned long block,
358 struct ext3_reserve_window_node *rsv_node),
359
360 TP_ARGS(sb, block, rsv_node),
361
f127e61e
MD
362 TP_FIELDS(
363 ctf_integer(unsigned long, block, block)
364 ctf_integer(unsigned long, start, rsv_node->rsv_window._rsv_start)
365 ctf_integer(unsigned long, end, rsv_node->rsv_window._rsv_end)
366 ctf_integer(dev_t, dev, sb->s_dev)
367 )
b283666f
PW
368)
369
3bc29f0a 370LTTNG_TRACEPOINT_EVENT(ext3_forget,
b283666f
PW
371 TP_PROTO(struct inode *inode, int is_metadata, unsigned long block),
372
373 TP_ARGS(inode, is_metadata, block),
374
f127e61e
MD
375 TP_FIELDS(
376 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
377 ctf_integer(ino_t, ino, inode->i_ino)
378 ctf_integer(umode_t, mode, inode->i_mode)
379 ctf_integer(int, is_metadata, is_metadata)
380 ctf_integer(unsigned long, block, block)
381 )
b283666f
PW
382)
383
3bc29f0a 384LTTNG_TRACEPOINT_EVENT(ext3_read_block_bitmap,
b283666f
PW
385 TP_PROTO(struct super_block *sb, unsigned int group),
386
387 TP_ARGS(sb, group),
388
f127e61e
MD
389 TP_FIELDS(
390 ctf_integer(dev_t, dev, sb->s_dev)
391 ctf_integer(__u32, group, group)
392 )
b283666f
PW
393)
394
3bc29f0a 395LTTNG_TRACEPOINT_EVENT(ext3_direct_IO_enter,
b283666f
PW
396 TP_PROTO(struct inode *inode, loff_t offset, unsigned long len, int rw),
397
398 TP_ARGS(inode, offset, len, rw),
399
f127e61e
MD
400 TP_FIELDS(
401 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
402 ctf_integer(ino_t, ino, inode->i_ino)
403 ctf_integer(loff_t, pos, offset)
404 ctf_integer(unsigned long, len, len)
405 ctf_integer(int, rw, rw)
406 )
b283666f
PW
407)
408
3bc29f0a 409LTTNG_TRACEPOINT_EVENT(ext3_direct_IO_exit,
b283666f
PW
410 TP_PROTO(struct inode *inode, loff_t offset, unsigned long len,
411 int rw, int ret),
412
413 TP_ARGS(inode, offset, len, rw, ret),
414
f127e61e
MD
415 TP_FIELDS(
416 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
417 ctf_integer(ino_t, ino, inode->i_ino)
418 ctf_integer(loff_t, pos, offset)
419 ctf_integer(unsigned long, len, len)
420 ctf_integer(int, rw, rw)
421 ctf_integer(int, ret, ret)
422 )
b283666f
PW
423)
424
3bc29f0a 425LTTNG_TRACEPOINT_EVENT(ext3_unlink_enter,
b283666f
PW
426 TP_PROTO(struct inode *parent, struct dentry *dentry),
427
428 TP_ARGS(parent, dentry),
429
f127e61e
MD
430 TP_FIELDS(
431 ctf_integer(ino_t, parent, parent->i_ino)
432 ctf_integer(ino_t, ino, dentry->d_inode->i_ino)
433 ctf_integer(loff_t, size, dentry->d_inode->i_size)
434 ctf_integer(dev_t, dev, dentry->d_inode->i_sb->s_dev)
435 )
b283666f
PW
436)
437
3bc29f0a 438LTTNG_TRACEPOINT_EVENT(ext3_unlink_exit,
b283666f
PW
439 TP_PROTO(struct dentry *dentry, int ret),
440
441 TP_ARGS(dentry, ret),
442
f127e61e
MD
443 TP_FIELDS(
444 ctf_integer(dev_t, dev, dentry->d_inode->i_sb->s_dev)
445 ctf_integer(ino_t, ino, dentry->d_inode->i_ino)
446 ctf_integer(int, ret, ret)
447 )
b283666f
PW
448)
449
3bc29f0a 450LTTNG_TRACEPOINT_EVENT_CLASS(ext3__truncate,
b283666f
PW
451 TP_PROTO(struct inode *inode),
452
453 TP_ARGS(inode),
454
f127e61e
MD
455 TP_FIELDS(
456 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
457 ctf_integer(ino_t, ino, inode->i_ino)
458 ctf_integer(blkcnt_t, blocks, inode->i_blocks)
459 )
b283666f
PW
460)
461
3bc29f0a 462LTTNG_TRACEPOINT_EVENT_INSTANCE(ext3__truncate, ext3_truncate_enter,
b283666f
PW
463
464 TP_PROTO(struct inode *inode),
465
466 TP_ARGS(inode)
467)
468
3bc29f0a 469LTTNG_TRACEPOINT_EVENT_INSTANCE(ext3__truncate, ext3_truncate_exit,
b283666f
PW
470
471 TP_PROTO(struct inode *inode),
472
473 TP_ARGS(inode)
474)
475
3bc29f0a 476LTTNG_TRACEPOINT_EVENT(ext3_get_blocks_enter,
b283666f
PW
477 TP_PROTO(struct inode *inode, unsigned long lblk,
478 unsigned long len, int create),
479
480 TP_ARGS(inode, lblk, len, create),
481
f127e61e
MD
482 TP_FIELDS(
483 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
484 ctf_integer(ino_t, ino, inode->i_ino)
485 ctf_integer(unsigned long, lblk, lblk)
486 ctf_integer(unsigned long, len, len)
487 ctf_integer(int, create, create)
488 )
b283666f
PW
489)
490
3bc29f0a 491LTTNG_TRACEPOINT_EVENT(ext3_get_blocks_exit,
b283666f
PW
492 TP_PROTO(struct inode *inode, unsigned long lblk,
493 unsigned long pblk, unsigned long len, int ret),
494
495 TP_ARGS(inode, lblk, pblk, len, ret),
496
f127e61e
MD
497 TP_FIELDS(
498 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
499 ctf_integer(ino_t, ino, inode->i_ino)
500 ctf_integer(unsigned long, lblk, lblk)
501 ctf_integer(unsigned long, pblk, pblk)
502 ctf_integer(unsigned long, len, len)
503 ctf_integer(int, ret, ret)
504 )
b283666f
PW
505)
506
3bc29f0a 507LTTNG_TRACEPOINT_EVENT(ext3_load_inode,
b283666f
PW
508 TP_PROTO(struct inode *inode),
509
510 TP_ARGS(inode),
511
f127e61e
MD
512 TP_FIELDS(
513 ctf_integer(dev_t, dev, inode->i_sb->s_dev)
514 ctf_integer(ino_t, ino, inode->i_ino)
515 )
b283666f
PW
516)
517
3bc29f0a 518#endif /* LTTNG_TRACE_EXT3_H */
b283666f
PW
519
520/* This part must be outside protection */
6ec43db8 521#include <probes/define_trace.h>
This page took 0.069077 seconds and 4 git commands to generate.