Commit | Line | Data |
---|---|---|
b283666f PW |
1 | #undef TRACE_SYSTEM |
2 | #define TRACE_SYSTEM ext3 | |
3 | ||
4 | #if !defined(_TRACE_EXT3_H) || defined(TRACE_HEADER_MULTI_READ) | |
5 | #define _TRACE_EXT3_H | |
6 | ||
7 | #include <linux/tracepoint.h> | |
8 | ||
b283666f PW |
9 | TRACE_EVENT(ext3_free_inode, |
10 | TP_PROTO(struct inode *inode), | |
11 | ||
12 | TP_ARGS(inode), | |
13 | ||
14 | TP_STRUCT__entry( | |
15 | __field( dev_t, dev ) | |
16 | __field( ino_t, ino ) | |
17 | __field( umode_t, mode ) | |
18 | __field( uid_t, uid ) | |
19 | __field( gid_t, gid ) | |
20 | __field( blkcnt_t, blocks ) | |
21 | ), | |
22 | ||
23 | TP_fast_assign( | |
d3ac4d63 PW |
24 | tp_assign(dev, inode->i_sb->s_dev) |
25 | tp_assign(ino, inode->i_ino) | |
26 | tp_assign(mode, inode->i_mode) | |
27 | tp_assign(uid, inode->i_uid) | |
28 | tp_assign(gid, inode->i_gid) | |
29 | tp_assign(blocks, inode->i_blocks) | |
b283666f PW |
30 | ), |
31 | ||
32 | TP_printk("dev %d,%d ino %lu mode 0%o uid %u gid %u blocks %lu", | |
33 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
34 | (unsigned long) __entry->ino, | |
35 | __entry->mode, __entry->uid, __entry->gid, | |
36 | (unsigned long) __entry->blocks) | |
37 | ) | |
38 | ||
39 | TRACE_EVENT(ext3_request_inode, | |
40 | TP_PROTO(struct inode *dir, int mode), | |
41 | ||
42 | TP_ARGS(dir, mode), | |
43 | ||
44 | TP_STRUCT__entry( | |
45 | __field( dev_t, dev ) | |
46 | __field( ino_t, dir ) | |
47 | __field( umode_t, mode ) | |
48 | ), | |
49 | ||
50 | TP_fast_assign( | |
d3ac4d63 PW |
51 | tp_assign(dev, dir->i_sb->s_dev) |
52 | tp_assign(dir, dir->i_ino) | |
53 | tp_assign(mode, mode) | |
b283666f PW |
54 | ), |
55 | ||
56 | TP_printk("dev %d,%d dir %lu mode 0%o", | |
57 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
58 | (unsigned long) __entry->dir, __entry->mode) | |
59 | ) | |
60 | ||
61 | TRACE_EVENT(ext3_allocate_inode, | |
62 | TP_PROTO(struct inode *inode, struct inode *dir, int mode), | |
63 | ||
64 | TP_ARGS(inode, dir, mode), | |
65 | ||
66 | TP_STRUCT__entry( | |
67 | __field( dev_t, dev ) | |
68 | __field( ino_t, ino ) | |
69 | __field( ino_t, dir ) | |
70 | __field( umode_t, mode ) | |
71 | ), | |
72 | ||
73 | TP_fast_assign( | |
d3ac4d63 PW |
74 | tp_assign(dev, inode->i_sb->s_dev) |
75 | tp_assign(ino, inode->i_ino) | |
76 | tp_assign(dir, dir->i_ino) | |
77 | tp_assign(mode, mode) | |
b283666f PW |
78 | ), |
79 | ||
80 | TP_printk("dev %d,%d ino %lu dir %lu mode 0%o", | |
81 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
82 | (unsigned long) __entry->ino, | |
83 | (unsigned long) __entry->dir, __entry->mode) | |
84 | ) | |
85 | ||
86 | TRACE_EVENT(ext3_evict_inode, | |
87 | TP_PROTO(struct inode *inode), | |
88 | ||
89 | TP_ARGS(inode), | |
90 | ||
91 | TP_STRUCT__entry( | |
92 | __field( dev_t, dev ) | |
93 | __field( ino_t, ino ) | |
94 | __field( int, nlink ) | |
95 | ), | |
96 | ||
97 | TP_fast_assign( | |
d3ac4d63 PW |
98 | tp_assign(dev, inode->i_sb->s_dev) |
99 | tp_assign(ino, inode->i_ino) | |
100 | tp_assign(nlink, inode->i_nlink) | |
b283666f PW |
101 | ), |
102 | ||
103 | TP_printk("dev %d,%d ino %lu nlink %d", | |
104 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
105 | (unsigned long) __entry->ino, __entry->nlink) | |
106 | ) | |
107 | ||
108 | TRACE_EVENT(ext3_drop_inode, | |
109 | TP_PROTO(struct inode *inode, int drop), | |
110 | ||
111 | TP_ARGS(inode, drop), | |
112 | ||
113 | TP_STRUCT__entry( | |
114 | __field( dev_t, dev ) | |
115 | __field( ino_t, ino ) | |
116 | __field( int, drop ) | |
117 | ), | |
118 | ||
119 | TP_fast_assign( | |
d3ac4d63 PW |
120 | tp_assign(dev, inode->i_sb->s_dev) |
121 | tp_assign(ino, inode->i_ino) | |
122 | tp_assign(drop, drop) | |
b283666f PW |
123 | ), |
124 | ||
125 | TP_printk("dev %d,%d ino %lu drop %d", | |
126 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
127 | (unsigned long) __entry->ino, __entry->drop) | |
128 | ) | |
129 | ||
130 | TRACE_EVENT(ext3_mark_inode_dirty, | |
131 | TP_PROTO(struct inode *inode, unsigned long IP), | |
132 | ||
133 | TP_ARGS(inode, IP), | |
134 | ||
135 | TP_STRUCT__entry( | |
136 | __field( dev_t, dev ) | |
137 | __field( ino_t, ino ) | |
138 | __field(unsigned long, ip ) | |
139 | ), | |
140 | ||
141 | TP_fast_assign( | |
d3ac4d63 PW |
142 | tp_assign(dev, inode->i_sb->s_dev) |
143 | tp_assign(ino, inode->i_ino) | |
144 | tp_assign(ip, IP) | |
b283666f PW |
145 | ), |
146 | ||
147 | TP_printk("dev %d,%d ino %lu caller %pF", | |
148 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
149 | (unsigned long) __entry->ino, (void *)__entry->ip) | |
150 | ) | |
151 | ||
152 | TRACE_EVENT(ext3_write_begin, | |
153 | TP_PROTO(struct inode *inode, loff_t pos, unsigned int len, | |
154 | unsigned int flags), | |
155 | ||
156 | TP_ARGS(inode, pos, len, flags), | |
157 | ||
158 | TP_STRUCT__entry( | |
159 | __field( dev_t, dev ) | |
160 | __field( ino_t, ino ) | |
161 | __field( loff_t, pos ) | |
162 | __field( unsigned int, len ) | |
163 | __field( unsigned int, flags ) | |
164 | ), | |
165 | ||
166 | TP_fast_assign( | |
d3ac4d63 PW |
167 | tp_assign(dev, inode->i_sb->s_dev) |
168 | tp_assign(ino, inode->i_ino) | |
169 | tp_assign(pos, pos) | |
170 | tp_assign(len, len) | |
171 | tp_assign(flags, flags) | |
b283666f PW |
172 | ), |
173 | ||
174 | TP_printk("dev %d,%d ino %lu pos %llu len %u flags %u", | |
175 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
176 | (unsigned long) __entry->ino, | |
177 | (unsigned long long) __entry->pos, __entry->len, | |
178 | __entry->flags) | |
179 | ) | |
180 | ||
181 | DECLARE_EVENT_CLASS(ext3__write_end, | |
182 | TP_PROTO(struct inode *inode, loff_t pos, unsigned int len, | |
183 | unsigned int copied), | |
184 | ||
185 | TP_ARGS(inode, pos, len, copied), | |
186 | ||
187 | TP_STRUCT__entry( | |
188 | __field( dev_t, dev ) | |
189 | __field( ino_t, ino ) | |
190 | __field( loff_t, pos ) | |
191 | __field( unsigned int, len ) | |
192 | __field( unsigned int, copied ) | |
193 | ), | |
194 | ||
195 | TP_fast_assign( | |
d3ac4d63 PW |
196 | tp_assign(dev, inode->i_sb->s_dev) |
197 | tp_assign(ino, inode->i_ino) | |
198 | tp_assign(pos, pos) | |
199 | tp_assign(len, len) | |
200 | tp_assign(copied, copied) | |
b283666f PW |
201 | ), |
202 | ||
203 | TP_printk("dev %d,%d ino %lu pos %llu len %u copied %u", | |
204 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
205 | (unsigned long) __entry->ino, | |
206 | (unsigned long long) __entry->pos, __entry->len, | |
207 | __entry->copied) | |
208 | ) | |
209 | ||
210 | DEFINE_EVENT(ext3__write_end, ext3_ordered_write_end, | |
211 | ||
212 | TP_PROTO(struct inode *inode, loff_t pos, unsigned int len, | |
213 | unsigned int copied), | |
214 | ||
215 | TP_ARGS(inode, pos, len, copied) | |
216 | ) | |
217 | ||
218 | DEFINE_EVENT(ext3__write_end, ext3_writeback_write_end, | |
219 | ||
220 | TP_PROTO(struct inode *inode, loff_t pos, unsigned int len, | |
221 | unsigned int copied), | |
222 | ||
223 | TP_ARGS(inode, pos, len, copied) | |
224 | ) | |
225 | ||
226 | DEFINE_EVENT(ext3__write_end, ext3_journalled_write_end, | |
227 | ||
228 | TP_PROTO(struct inode *inode, loff_t pos, unsigned int len, | |
229 | unsigned int copied), | |
230 | ||
231 | TP_ARGS(inode, pos, len, copied) | |
232 | ) | |
233 | ||
234 | DECLARE_EVENT_CLASS(ext3__page_op, | |
235 | TP_PROTO(struct page *page), | |
236 | ||
237 | TP_ARGS(page), | |
238 | ||
239 | TP_STRUCT__entry( | |
240 | __field( dev_t, dev ) | |
241 | __field( ino_t, ino ) | |
242 | __field( pgoff_t, index ) | |
243 | ||
244 | ), | |
245 | ||
246 | TP_fast_assign( | |
d3ac4d63 PW |
247 | tp_assign(index, page->index) |
248 | tp_assign(ino, page->mapping->host->i_ino) | |
249 | tp_assign(dev, page->mapping->host->i_sb->s_dev) | |
b283666f PW |
250 | ), |
251 | ||
252 | TP_printk("dev %d,%d ino %lu page_index %lu", | |
253 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
254 | (unsigned long) __entry->ino, __entry->index) | |
255 | ) | |
256 | ||
257 | DEFINE_EVENT(ext3__page_op, ext3_ordered_writepage, | |
258 | ||
259 | TP_PROTO(struct page *page), | |
260 | ||
261 | TP_ARGS(page) | |
262 | ) | |
263 | ||
264 | DEFINE_EVENT(ext3__page_op, ext3_writeback_writepage, | |
265 | ||
266 | TP_PROTO(struct page *page), | |
267 | ||
268 | TP_ARGS(page) | |
269 | ) | |
270 | ||
271 | DEFINE_EVENT(ext3__page_op, ext3_journalled_writepage, | |
272 | ||
273 | TP_PROTO(struct page *page), | |
274 | ||
275 | TP_ARGS(page) | |
276 | ) | |
277 | ||
278 | DEFINE_EVENT(ext3__page_op, ext3_readpage, | |
279 | ||
280 | TP_PROTO(struct page *page), | |
281 | ||
282 | TP_ARGS(page) | |
283 | ) | |
284 | ||
285 | DEFINE_EVENT(ext3__page_op, ext3_releasepage, | |
286 | ||
287 | TP_PROTO(struct page *page), | |
288 | ||
289 | TP_ARGS(page) | |
290 | ) | |
291 | ||
292 | TRACE_EVENT(ext3_invalidatepage, | |
293 | TP_PROTO(struct page *page, unsigned long offset), | |
294 | ||
295 | TP_ARGS(page, offset), | |
296 | ||
297 | TP_STRUCT__entry( | |
298 | __field( pgoff_t, index ) | |
299 | __field( unsigned long, offset ) | |
300 | __field( ino_t, ino ) | |
301 | __field( dev_t, dev ) | |
302 | ||
303 | ), | |
304 | ||
305 | TP_fast_assign( | |
d3ac4d63 PW |
306 | tp_assign(index, page->index) |
307 | tp_assign(offset, offset) | |
308 | tp_assign(ino, page->mapping->host->i_ino) | |
309 | tp_assign(dev, page->mapping->host->i_sb->s_dev) | |
b283666f PW |
310 | ), |
311 | ||
312 | TP_printk("dev %d,%d ino %lu page_index %lu offset %lu", | |
313 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
314 | (unsigned long) __entry->ino, | |
315 | __entry->index, __entry->offset) | |
316 | ) | |
317 | ||
318 | TRACE_EVENT(ext3_discard_blocks, | |
319 | TP_PROTO(struct super_block *sb, unsigned long blk, | |
320 | unsigned long count), | |
321 | ||
322 | TP_ARGS(sb, blk, count), | |
323 | ||
324 | TP_STRUCT__entry( | |
325 | __field( dev_t, dev ) | |
326 | __field( unsigned long, blk ) | |
327 | __field( unsigned long, count ) | |
328 | ||
329 | ), | |
330 | ||
331 | TP_fast_assign( | |
d3ac4d63 PW |
332 | tp_assign(dev, sb->s_dev) |
333 | tp_assign(blk, blk) | |
334 | tp_assign(count, count) | |
b283666f PW |
335 | ), |
336 | ||
337 | TP_printk("dev %d,%d blk %lu count %lu", | |
338 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
339 | __entry->blk, __entry->count) | |
340 | ) | |
341 | ||
342 | TRACE_EVENT(ext3_request_blocks, | |
343 | TP_PROTO(struct inode *inode, unsigned long goal, | |
344 | unsigned long count), | |
345 | ||
346 | TP_ARGS(inode, goal, count), | |
347 | ||
348 | TP_STRUCT__entry( | |
349 | __field( dev_t, dev ) | |
350 | __field( ino_t, ino ) | |
351 | __field( unsigned long, count ) | |
352 | __field( unsigned long, goal ) | |
353 | ), | |
354 | ||
355 | TP_fast_assign( | |
d3ac4d63 PW |
356 | tp_assign(dev, inode->i_sb->s_dev) |
357 | tp_assign(ino, inode->i_ino) | |
358 | tp_assign(count, count) | |
359 | tp_assign(goal, goal) | |
b283666f PW |
360 | ), |
361 | ||
362 | TP_printk("dev %d,%d ino %lu count %lu goal %lu ", | |
363 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
364 | (unsigned long) __entry->ino, | |
365 | __entry->count, __entry->goal) | |
366 | ) | |
367 | ||
368 | TRACE_EVENT(ext3_allocate_blocks, | |
369 | TP_PROTO(struct inode *inode, unsigned long goal, | |
370 | unsigned long count, unsigned long block), | |
371 | ||
372 | TP_ARGS(inode, goal, count, block), | |
373 | ||
374 | TP_STRUCT__entry( | |
375 | __field( dev_t, dev ) | |
376 | __field( ino_t, ino ) | |
377 | __field( unsigned long, block ) | |
378 | __field( unsigned long, count ) | |
379 | __field( unsigned long, goal ) | |
380 | ), | |
381 | ||
382 | TP_fast_assign( | |
d3ac4d63 PW |
383 | tp_assign(dev, inode->i_sb->s_dev) |
384 | tp_assign(ino, inode->i_ino) | |
385 | tp_assign(block, block) | |
386 | tp_assign(count, count) | |
387 | tp_assign(goal, goal) | |
b283666f PW |
388 | ), |
389 | ||
390 | TP_printk("dev %d,%d ino %lu count %lu block %lu goal %lu", | |
391 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
392 | (unsigned long) __entry->ino, | |
393 | __entry->count, __entry->block, | |
394 | __entry->goal) | |
395 | ) | |
396 | ||
397 | TRACE_EVENT(ext3_free_blocks, | |
398 | TP_PROTO(struct inode *inode, unsigned long block, | |
399 | unsigned long count), | |
400 | ||
401 | TP_ARGS(inode, block, count), | |
402 | ||
403 | TP_STRUCT__entry( | |
404 | __field( dev_t, dev ) | |
405 | __field( ino_t, ino ) | |
406 | __field( umode_t, mode ) | |
407 | __field( unsigned long, block ) | |
408 | __field( unsigned long, count ) | |
409 | ), | |
410 | ||
411 | TP_fast_assign( | |
d3ac4d63 PW |
412 | tp_assign(dev, inode->i_sb->s_dev) |
413 | tp_assign(ino, inode->i_ino) | |
414 | tp_assign(mode, inode->i_mode) | |
415 | tp_assign(block, block) | |
416 | tp_assign(count, count) | |
b283666f PW |
417 | ), |
418 | ||
419 | TP_printk("dev %d,%d ino %lu mode 0%o block %lu count %lu", | |
420 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
421 | (unsigned long) __entry->ino, | |
422 | __entry->mode, __entry->block, __entry->count) | |
423 | ) | |
424 | ||
425 | TRACE_EVENT(ext3_sync_file_enter, | |
426 | TP_PROTO(struct file *file, int datasync), | |
427 | ||
428 | TP_ARGS(file, datasync), | |
429 | ||
430 | TP_STRUCT__entry( | |
431 | __field( dev_t, dev ) | |
432 | __field( ino_t, ino ) | |
433 | __field( ino_t, parent ) | |
434 | __field( int, datasync ) | |
435 | ), | |
436 | ||
437 | TP_fast_assign( | |
630bed30 AG |
438 | tp_assign(dev, file->f_path.dentry->d_inode->i_sb->s_dev) |
439 | tp_assign(ino, file->f_path.dentry->d_inode->i_ino) | |
d3ac4d63 | 440 | tp_assign(datasync, datasync) |
630bed30 | 441 | tp_assign(parent, file->f_path.dentry->d_parent->d_inode->i_ino) |
b283666f PW |
442 | ), |
443 | ||
444 | TP_printk("dev %d,%d ino %lu parent %ld datasync %d ", | |
445 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
446 | (unsigned long) __entry->ino, | |
447 | (unsigned long) __entry->parent, __entry->datasync) | |
448 | ) | |
449 | ||
450 | TRACE_EVENT(ext3_sync_file_exit, | |
451 | TP_PROTO(struct inode *inode, int ret), | |
452 | ||
453 | TP_ARGS(inode, ret), | |
454 | ||
455 | TP_STRUCT__entry( | |
456 | __field( int, ret ) | |
457 | __field( ino_t, ino ) | |
458 | __field( dev_t, dev ) | |
459 | ), | |
460 | ||
461 | TP_fast_assign( | |
d3ac4d63 PW |
462 | tp_assign(ret, ret) |
463 | tp_assign(ino, inode->i_ino) | |
464 | tp_assign(dev, inode->i_sb->s_dev) | |
b283666f PW |
465 | ), |
466 | ||
467 | TP_printk("dev %d,%d ino %lu ret %d", | |
468 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
469 | (unsigned long) __entry->ino, | |
470 | __entry->ret) | |
471 | ) | |
472 | ||
473 | TRACE_EVENT(ext3_sync_fs, | |
474 | TP_PROTO(struct super_block *sb, int wait), | |
475 | ||
476 | TP_ARGS(sb, wait), | |
477 | ||
478 | TP_STRUCT__entry( | |
479 | __field( dev_t, dev ) | |
480 | __field( int, wait ) | |
481 | ||
482 | ), | |
483 | ||
484 | TP_fast_assign( | |
d3ac4d63 PW |
485 | tp_assign(dev, sb->s_dev) |
486 | tp_assign(wait, wait) | |
b283666f PW |
487 | ), |
488 | ||
489 | TP_printk("dev %d,%d wait %d", | |
490 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
491 | __entry->wait) | |
492 | ) | |
493 | ||
494 | TRACE_EVENT(ext3_rsv_window_add, | |
495 | TP_PROTO(struct super_block *sb, | |
496 | struct ext3_reserve_window_node *rsv_node), | |
497 | ||
498 | TP_ARGS(sb, rsv_node), | |
499 | ||
500 | TP_STRUCT__entry( | |
501 | __field( unsigned long, start ) | |
502 | __field( unsigned long, end ) | |
503 | __field( dev_t, dev ) | |
504 | ), | |
505 | ||
506 | TP_fast_assign( | |
d3ac4d63 PW |
507 | tp_assign(dev, sb->s_dev) |
508 | tp_assign(start, rsv_node->rsv_window._rsv_start) | |
509 | tp_assign(end, rsv_node->rsv_window._rsv_end) | |
b283666f PW |
510 | ), |
511 | ||
512 | TP_printk("dev %d,%d start %lu end %lu", | |
513 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
514 | __entry->start, __entry->end) | |
515 | ) | |
516 | ||
517 | TRACE_EVENT(ext3_discard_reservation, | |
518 | TP_PROTO(struct inode *inode, | |
519 | struct ext3_reserve_window_node *rsv_node), | |
520 | ||
521 | TP_ARGS(inode, rsv_node), | |
522 | ||
523 | TP_STRUCT__entry( | |
524 | __field( unsigned long, start ) | |
525 | __field( unsigned long, end ) | |
526 | __field( ino_t, ino ) | |
527 | __field( dev_t, dev ) | |
528 | ), | |
529 | ||
530 | TP_fast_assign( | |
d3ac4d63 PW |
531 | tp_assign(start, rsv_node->rsv_window._rsv_start) |
532 | tp_assign(end, rsv_node->rsv_window._rsv_end) | |
533 | tp_assign(ino, inode->i_ino) | |
534 | tp_assign(dev, inode->i_sb->s_dev) | |
b283666f PW |
535 | ), |
536 | ||
537 | TP_printk("dev %d,%d ino %lu start %lu end %lu", | |
538 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
539 | (unsigned long)__entry->ino, __entry->start, | |
540 | __entry->end) | |
541 | ) | |
542 | ||
543 | TRACE_EVENT(ext3_alloc_new_reservation, | |
544 | TP_PROTO(struct super_block *sb, unsigned long goal), | |
545 | ||
546 | TP_ARGS(sb, goal), | |
547 | ||
548 | TP_STRUCT__entry( | |
549 | __field( dev_t, dev ) | |
550 | __field( unsigned long, goal ) | |
551 | ), | |
552 | ||
553 | TP_fast_assign( | |
d3ac4d63 PW |
554 | tp_assign(dev, sb->s_dev) |
555 | tp_assign(goal, goal) | |
b283666f PW |
556 | ), |
557 | ||
558 | TP_printk("dev %d,%d goal %lu", | |
559 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
560 | __entry->goal) | |
561 | ) | |
562 | ||
563 | TRACE_EVENT(ext3_reserved, | |
564 | TP_PROTO(struct super_block *sb, unsigned long block, | |
565 | struct ext3_reserve_window_node *rsv_node), | |
566 | ||
567 | TP_ARGS(sb, block, rsv_node), | |
568 | ||
569 | TP_STRUCT__entry( | |
570 | __field( unsigned long, block ) | |
571 | __field( unsigned long, start ) | |
572 | __field( unsigned long, end ) | |
573 | __field( dev_t, dev ) | |
574 | ), | |
575 | ||
576 | TP_fast_assign( | |
d3ac4d63 PW |
577 | tp_assign(block, block) |
578 | tp_assign(start, rsv_node->rsv_window._rsv_start) | |
579 | tp_assign(end, rsv_node->rsv_window._rsv_end) | |
580 | tp_assign(dev, sb->s_dev) | |
b283666f PW |
581 | ), |
582 | ||
583 | TP_printk("dev %d,%d block %lu, start %lu end %lu", | |
584 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
585 | __entry->block, __entry->start, __entry->end) | |
586 | ) | |
587 | ||
588 | TRACE_EVENT(ext3_forget, | |
589 | TP_PROTO(struct inode *inode, int is_metadata, unsigned long block), | |
590 | ||
591 | TP_ARGS(inode, is_metadata, block), | |
592 | ||
593 | TP_STRUCT__entry( | |
594 | __field( dev_t, dev ) | |
595 | __field( ino_t, ino ) | |
596 | __field( umode_t, mode ) | |
597 | __field( int, is_metadata ) | |
598 | __field( unsigned long, block ) | |
599 | ), | |
600 | ||
601 | TP_fast_assign( | |
d3ac4d63 PW |
602 | tp_assign(dev, inode->i_sb->s_dev) |
603 | tp_assign(ino, inode->i_ino) | |
604 | tp_assign(mode, inode->i_mode) | |
605 | tp_assign(is_metadata, is_metadata) | |
606 | tp_assign(block, block) | |
b283666f PW |
607 | ), |
608 | ||
609 | TP_printk("dev %d,%d ino %lu mode 0%o is_metadata %d block %lu", | |
610 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
611 | (unsigned long) __entry->ino, | |
612 | __entry->mode, __entry->is_metadata, __entry->block) | |
613 | ) | |
614 | ||
615 | TRACE_EVENT(ext3_read_block_bitmap, | |
616 | TP_PROTO(struct super_block *sb, unsigned int group), | |
617 | ||
618 | TP_ARGS(sb, group), | |
619 | ||
620 | TP_STRUCT__entry( | |
621 | __field( dev_t, dev ) | |
622 | __field( __u32, group ) | |
623 | ||
624 | ), | |
625 | ||
626 | TP_fast_assign( | |
d3ac4d63 PW |
627 | tp_assign(dev, sb->s_dev) |
628 | tp_assign(group, group) | |
b283666f PW |
629 | ), |
630 | ||
631 | TP_printk("dev %d,%d group %u", | |
632 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
633 | __entry->group) | |
634 | ) | |
635 | ||
636 | TRACE_EVENT(ext3_direct_IO_enter, | |
637 | TP_PROTO(struct inode *inode, loff_t offset, unsigned long len, int rw), | |
638 | ||
639 | TP_ARGS(inode, offset, len, rw), | |
640 | ||
641 | TP_STRUCT__entry( | |
642 | __field( ino_t, ino ) | |
643 | __field( dev_t, dev ) | |
644 | __field( loff_t, pos ) | |
645 | __field( unsigned long, len ) | |
646 | __field( int, rw ) | |
647 | ), | |
648 | ||
649 | TP_fast_assign( | |
d3ac4d63 PW |
650 | tp_assign(ino, inode->i_ino) |
651 | tp_assign(dev, inode->i_sb->s_dev) | |
652 | tp_assign(pos, offset) | |
653 | tp_assign(len, len) | |
654 | tp_assign(rw, rw) | |
b283666f PW |
655 | ), |
656 | ||
657 | TP_printk("dev %d,%d ino %lu pos %llu len %lu rw %d", | |
658 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
659 | (unsigned long) __entry->ino, | |
660 | (unsigned long long) __entry->pos, __entry->len, | |
661 | __entry->rw) | |
662 | ) | |
663 | ||
664 | TRACE_EVENT(ext3_direct_IO_exit, | |
665 | TP_PROTO(struct inode *inode, loff_t offset, unsigned long len, | |
666 | int rw, int ret), | |
667 | ||
668 | TP_ARGS(inode, offset, len, rw, ret), | |
669 | ||
670 | TP_STRUCT__entry( | |
671 | __field( ino_t, ino ) | |
672 | __field( dev_t, dev ) | |
673 | __field( loff_t, pos ) | |
674 | __field( unsigned long, len ) | |
675 | __field( int, rw ) | |
676 | __field( int, ret ) | |
677 | ), | |
678 | ||
679 | TP_fast_assign( | |
d3ac4d63 PW |
680 | tp_assign(ino, inode->i_ino) |
681 | tp_assign(dev, inode->i_sb->s_dev) | |
682 | tp_assign(pos, offset) | |
683 | tp_assign(len, len) | |
684 | tp_assign(rw, rw) | |
685 | tp_assign(ret, ret) | |
b283666f PW |
686 | ), |
687 | ||
688 | TP_printk("dev %d,%d ino %lu pos %llu len %lu rw %d ret %d", | |
689 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
690 | (unsigned long) __entry->ino, | |
691 | (unsigned long long) __entry->pos, __entry->len, | |
692 | __entry->rw, __entry->ret) | |
693 | ) | |
694 | ||
695 | TRACE_EVENT(ext3_unlink_enter, | |
696 | TP_PROTO(struct inode *parent, struct dentry *dentry), | |
697 | ||
698 | TP_ARGS(parent, dentry), | |
699 | ||
700 | TP_STRUCT__entry( | |
701 | __field( ino_t, parent ) | |
702 | __field( ino_t, ino ) | |
703 | __field( loff_t, size ) | |
704 | __field( dev_t, dev ) | |
705 | ), | |
706 | ||
707 | TP_fast_assign( | |
d3ac4d63 PW |
708 | tp_assign(parent, parent->i_ino) |
709 | tp_assign(ino, dentry->d_inode->i_ino) | |
710 | tp_assign(size, dentry->d_inode->i_size) | |
711 | tp_assign(dev, dentry->d_inode->i_sb->s_dev) | |
b283666f PW |
712 | ), |
713 | ||
714 | TP_printk("dev %d,%d ino %lu size %lld parent %ld", | |
715 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
716 | (unsigned long) __entry->ino, | |
717 | (unsigned long long)__entry->size, | |
718 | (unsigned long) __entry->parent) | |
719 | ) | |
720 | ||
721 | TRACE_EVENT(ext3_unlink_exit, | |
722 | TP_PROTO(struct dentry *dentry, int ret), | |
723 | ||
724 | TP_ARGS(dentry, ret), | |
725 | ||
726 | TP_STRUCT__entry( | |
727 | __field( ino_t, ino ) | |
728 | __field( dev_t, dev ) | |
729 | __field( int, ret ) | |
730 | ), | |
731 | ||
732 | TP_fast_assign( | |
d3ac4d63 PW |
733 | tp_assign(ino, dentry->d_inode->i_ino) |
734 | tp_assign(dev, dentry->d_inode->i_sb->s_dev) | |
735 | tp_assign(ret, ret) | |
b283666f PW |
736 | ), |
737 | ||
738 | TP_printk("dev %d,%d ino %lu ret %d", | |
739 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
740 | (unsigned long) __entry->ino, | |
741 | __entry->ret) | |
742 | ) | |
743 | ||
744 | DECLARE_EVENT_CLASS(ext3__truncate, | |
745 | TP_PROTO(struct inode *inode), | |
746 | ||
747 | TP_ARGS(inode), | |
748 | ||
749 | TP_STRUCT__entry( | |
750 | __field( ino_t, ino ) | |
751 | __field( dev_t, dev ) | |
752 | __field( blkcnt_t, blocks ) | |
753 | ), | |
754 | ||
755 | TP_fast_assign( | |
d3ac4d63 PW |
756 | tp_assign(ino, inode->i_ino) |
757 | tp_assign(dev, inode->i_sb->s_dev) | |
758 | tp_assign(blocks, inode->i_blocks) | |
b283666f PW |
759 | ), |
760 | ||
761 | TP_printk("dev %d,%d ino %lu blocks %lu", | |
762 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
763 | (unsigned long) __entry->ino, (unsigned long) __entry->blocks) | |
764 | ) | |
765 | ||
766 | DEFINE_EVENT(ext3__truncate, ext3_truncate_enter, | |
767 | ||
768 | TP_PROTO(struct inode *inode), | |
769 | ||
770 | TP_ARGS(inode) | |
771 | ) | |
772 | ||
773 | DEFINE_EVENT(ext3__truncate, ext3_truncate_exit, | |
774 | ||
775 | TP_PROTO(struct inode *inode), | |
776 | ||
777 | TP_ARGS(inode) | |
778 | ) | |
779 | ||
780 | TRACE_EVENT(ext3_get_blocks_enter, | |
781 | TP_PROTO(struct inode *inode, unsigned long lblk, | |
782 | unsigned long len, int create), | |
783 | ||
784 | TP_ARGS(inode, lblk, len, create), | |
785 | ||
786 | TP_STRUCT__entry( | |
787 | __field( ino_t, ino ) | |
788 | __field( dev_t, dev ) | |
789 | __field( unsigned long, lblk ) | |
790 | __field( unsigned long, len ) | |
791 | __field( int, create ) | |
792 | ), | |
793 | ||
794 | TP_fast_assign( | |
d3ac4d63 PW |
795 | tp_assign(ino, inode->i_ino) |
796 | tp_assign(dev, inode->i_sb->s_dev) | |
797 | tp_assign(lblk, lblk) | |
798 | tp_assign(len, len) | |
799 | tp_assign(create, create) | |
b283666f PW |
800 | ), |
801 | ||
802 | TP_printk("dev %d,%d ino %lu lblk %lu len %lu create %u", | |
803 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
804 | (unsigned long) __entry->ino, | |
805 | __entry->lblk, __entry->len, __entry->create) | |
806 | ) | |
807 | ||
808 | TRACE_EVENT(ext3_get_blocks_exit, | |
809 | TP_PROTO(struct inode *inode, unsigned long lblk, | |
810 | unsigned long pblk, unsigned long len, int ret), | |
811 | ||
812 | TP_ARGS(inode, lblk, pblk, len, ret), | |
813 | ||
814 | TP_STRUCT__entry( | |
815 | __field( ino_t, ino ) | |
816 | __field( dev_t, dev ) | |
817 | __field( unsigned long, lblk ) | |
818 | __field( unsigned long, pblk ) | |
819 | __field( unsigned long, len ) | |
820 | __field( int, ret ) | |
821 | ), | |
822 | ||
823 | TP_fast_assign( | |
d3ac4d63 PW |
824 | tp_assign(ino, inode->i_ino) |
825 | tp_assign(dev, inode->i_sb->s_dev) | |
826 | tp_assign(lblk, lblk) | |
827 | tp_assign(pblk, pblk) | |
828 | tp_assign(len, len) | |
829 | tp_assign(ret, ret) | |
b283666f PW |
830 | ), |
831 | ||
832 | TP_printk("dev %d,%d ino %lu lblk %lu pblk %lu len %lu ret %d", | |
833 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
834 | (unsigned long) __entry->ino, | |
835 | __entry->lblk, __entry->pblk, | |
836 | __entry->len, __entry->ret) | |
837 | ) | |
838 | ||
839 | TRACE_EVENT(ext3_load_inode, | |
840 | TP_PROTO(struct inode *inode), | |
841 | ||
842 | TP_ARGS(inode), | |
843 | ||
844 | TP_STRUCT__entry( | |
845 | __field( ino_t, ino ) | |
846 | __field( dev_t, dev ) | |
847 | ), | |
848 | ||
849 | TP_fast_assign( | |
d3ac4d63 PW |
850 | tp_assign(ino, inode->i_ino) |
851 | tp_assign(dev, inode->i_sb->s_dev) | |
b283666f PW |
852 | ), |
853 | ||
854 | TP_printk("dev %d,%d ino %lu", | |
855 | MAJOR(__entry->dev), MINOR(__entry->dev), | |
856 | (unsigned long) __entry->ino) | |
857 | ) | |
858 | ||
859 | #endif /* _TRACE_EXT3_H */ | |
860 | ||
861 | /* This part must be outside protection */ | |
862 | #include "../../../probes/define_trace.h" |