xref: /openbmc/linux/fs/ocfs2/ocfs2_trace.h (revision 1a59d1b8)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #undef TRACE_SYSTEM
3 #define TRACE_SYSTEM ocfs2
4 
5 #if !defined(_TRACE_OCFS2_H) || defined(TRACE_HEADER_MULTI_READ)
6 #define _TRACE_OCFS2_H
7 
8 #include <linux/tracepoint.h>
9 
10 DECLARE_EVENT_CLASS(ocfs2__int,
11 	TP_PROTO(int num),
12 	TP_ARGS(num),
13 	TP_STRUCT__entry(
14 		__field(int, num)
15 	),
16 	TP_fast_assign(
17 		__entry->num = num;
18 	),
19 	TP_printk("%d", __entry->num)
20 );
21 
22 #define DEFINE_OCFS2_INT_EVENT(name)	\
23 DEFINE_EVENT(ocfs2__int, name,	\
24 	TP_PROTO(int num),	\
25 	TP_ARGS(num))
26 
27 DECLARE_EVENT_CLASS(ocfs2__uint,
28 	TP_PROTO(unsigned int num),
29 	TP_ARGS(num),
30 	TP_STRUCT__entry(
31 		__field(	unsigned int,	num		)
32 	),
33 	TP_fast_assign(
34 		__entry->num	= 	num;
35 	),
36 	TP_printk("%u", __entry->num)
37 );
38 
39 #define DEFINE_OCFS2_UINT_EVENT(name)	\
40 DEFINE_EVENT(ocfs2__uint, name,	\
41 	TP_PROTO(unsigned int num),	\
42 	TP_ARGS(num))
43 
44 DECLARE_EVENT_CLASS(ocfs2__ull,
45 	TP_PROTO(unsigned long long blkno),
46 	TP_ARGS(blkno),
47 	TP_STRUCT__entry(
48 		__field(unsigned long long, blkno)
49 	),
50 	TP_fast_assign(
51 		__entry->blkno = blkno;
52 	),
53 	TP_printk("%llu", __entry->blkno)
54 );
55 
56 #define DEFINE_OCFS2_ULL_EVENT(name)	\
57 DEFINE_EVENT(ocfs2__ull, name,	\
58 	TP_PROTO(unsigned long long num),	\
59 	TP_ARGS(num))
60 
61 DECLARE_EVENT_CLASS(ocfs2__pointer,
62 	TP_PROTO(void *pointer),
63 	TP_ARGS(pointer),
64 	TP_STRUCT__entry(
65 		__field(void *, pointer)
66 	),
67 	TP_fast_assign(
68 		__entry->pointer = pointer;
69 	),
70 	TP_printk("%p", __entry->pointer)
71 );
72 
73 #define DEFINE_OCFS2_POINTER_EVENT(name)	\
74 DEFINE_EVENT(ocfs2__pointer, name,	\
75 	TP_PROTO(void *pointer),	\
76 	TP_ARGS(pointer))
77 
78 DECLARE_EVENT_CLASS(ocfs2__string,
79 	TP_PROTO(const char *name),
80 	TP_ARGS(name),
81 	TP_STRUCT__entry(
82 		__string(name,name)
83 	),
84 	TP_fast_assign(
85 		__assign_str(name, name);
86 	),
87 	TP_printk("%s", __get_str(name))
88 );
89 
90 #define DEFINE_OCFS2_STRING_EVENT(name)	\
91 DEFINE_EVENT(ocfs2__string, name,	\
92 	TP_PROTO(const char *name),	\
93 	TP_ARGS(name))
94 
95 DECLARE_EVENT_CLASS(ocfs2__int_int,
96 	TP_PROTO(int value1, int value2),
97 	TP_ARGS(value1, value2),
98 	TP_STRUCT__entry(
99 		__field(int, value1)
100 		__field(int, value2)
101 	),
102 	TP_fast_assign(
103 		__entry->value1	= value1;
104 		__entry->value2	= value2;
105 	),
106 	TP_printk("%d %d", __entry->value1, __entry->value2)
107 );
108 
109 #define DEFINE_OCFS2_INT_INT_EVENT(name)	\
110 DEFINE_EVENT(ocfs2__int_int, name,	\
111 	TP_PROTO(int val1, int val2),	\
112 	TP_ARGS(val1, val2))
113 
114 DECLARE_EVENT_CLASS(ocfs2__uint_int,
115 	TP_PROTO(unsigned int value1, int value2),
116 	TP_ARGS(value1, value2),
117 	TP_STRUCT__entry(
118 		__field(unsigned int, value1)
119 		__field(int, value2)
120 	),
121 	TP_fast_assign(
122 		__entry->value1	= value1;
123 		__entry->value2	= value2;
124 	),
125 	TP_printk("%u %d", __entry->value1, __entry->value2)
126 );
127 
128 #define DEFINE_OCFS2_UINT_INT_EVENT(name)	\
129 DEFINE_EVENT(ocfs2__uint_int, name,	\
130 	TP_PROTO(unsigned int val1, int val2),	\
131 	TP_ARGS(val1, val2))
132 
133 DECLARE_EVENT_CLASS(ocfs2__uint_uint,
134 	TP_PROTO(unsigned int value1, unsigned int value2),
135 	TP_ARGS(value1, value2),
136 	TP_STRUCT__entry(
137 		__field(unsigned int, value1)
138 		__field(unsigned int, value2)
139 	),
140 	TP_fast_assign(
141 		__entry->value1 = value1;
142 		__entry->value2 = value2;
143 	),
144 	TP_printk("%u %u", __entry->value1, __entry->value2)
145 );
146 
147 #define DEFINE_OCFS2_UINT_UINT_EVENT(name)	\
148 DEFINE_EVENT(ocfs2__uint_uint, name,	\
149 	TP_PROTO(unsigned int val1, unsigned int val2),	\
150 	TP_ARGS(val1, val2))
151 
152 DECLARE_EVENT_CLASS(ocfs2__ull_uint,
153 	TP_PROTO(unsigned long long value1, unsigned int value2),
154 	TP_ARGS(value1, value2),
155 	TP_STRUCT__entry(
156 		__field(unsigned long long, value1)
157 		__field(unsigned int, value2)
158 	),
159 	TP_fast_assign(
160 		__entry->value1 = value1;
161 		__entry->value2 = value2;
162 	),
163 	TP_printk("%llu %u", __entry->value1, __entry->value2)
164 );
165 
166 #define DEFINE_OCFS2_ULL_UINT_EVENT(name)	\
167 DEFINE_EVENT(ocfs2__ull_uint, name,	\
168 	TP_PROTO(unsigned long long val1, unsigned int val2),	\
169 	TP_ARGS(val1, val2))
170 
171 DECLARE_EVENT_CLASS(ocfs2__ull_int,
172 	TP_PROTO(unsigned long long value1, int value2),
173 	TP_ARGS(value1, value2),
174 	TP_STRUCT__entry(
175 		__field(unsigned long long, value1)
176 		__field(int, value2)
177 	),
178 	TP_fast_assign(
179 		__entry->value1	= value1;
180 		__entry->value2	= value2;
181 	),
182 	TP_printk("%llu %d", __entry->value1, __entry->value2)
183 );
184 
185 #define DEFINE_OCFS2_ULL_INT_EVENT(name)	\
186 DEFINE_EVENT(ocfs2__ull_int, name,	\
187 	TP_PROTO(unsigned long long val1, int val2),	\
188 	TP_ARGS(val1, val2))
189 
190 DECLARE_EVENT_CLASS(ocfs2__ull_ull,
191 	TP_PROTO(unsigned long long value1, unsigned long long value2),
192 	TP_ARGS(value1, value2),
193 	TP_STRUCT__entry(
194 		__field(unsigned long long, value1)
195 		__field(unsigned long long, value2)
196 	),
197 	TP_fast_assign(
198 		__entry->value1 = value1;
199 		__entry->value2 = value2;
200 	),
201 	TP_printk("%llu %llu", __entry->value1, __entry->value2)
202 );
203 
204 #define DEFINE_OCFS2_ULL_ULL_EVENT(name)	\
205 DEFINE_EVENT(ocfs2__ull_ull, name,	\
206 	TP_PROTO(unsigned long long val1, unsigned long long val2),	\
207 	TP_ARGS(val1, val2))
208 
209 DECLARE_EVENT_CLASS(ocfs2__ull_ull_uint,
210 	TP_PROTO(unsigned long long value1,
211 		 unsigned long long value2, unsigned int value3),
212 	TP_ARGS(value1, value2, value3),
213 	TP_STRUCT__entry(
214 		__field(unsigned long long, value1)
215 		__field(unsigned long long, value2)
216 		__field(unsigned int, value3)
217 	),
218 	TP_fast_assign(
219 		__entry->value1 = value1;
220 		__entry->value2 = value2;
221 		__entry->value3 = value3;
222 	),
223 	TP_printk("%llu %llu %u",
224 		  __entry->value1, __entry->value2, __entry->value3)
225 );
226 
227 #define DEFINE_OCFS2_ULL_ULL_UINT_EVENT(name)	\
228 DEFINE_EVENT(ocfs2__ull_ull_uint, name,	\
229 	TP_PROTO(unsigned long long val1,	\
230 		 unsigned long long val2, unsigned int val3),	\
231 	TP_ARGS(val1, val2, val3))
232 
233 DECLARE_EVENT_CLASS(ocfs2__ull_uint_uint,
234 	TP_PROTO(unsigned long long value1,
235 		 unsigned int value2, unsigned int value3),
236 	TP_ARGS(value1, value2, value3),
237 	TP_STRUCT__entry(
238 		__field(unsigned long long, value1)
239 		__field(unsigned int, value2)
240 		__field(unsigned int, value3)
241 	),
242 	TP_fast_assign(
243 		__entry->value1 = value1;
244 		__entry->value2 = value2;
245 		__entry->value3	= value3;
246 	),
247 	TP_printk("%llu %u %u", __entry->value1,
248 		  __entry->value2, __entry->value3)
249 );
250 
251 #define DEFINE_OCFS2_ULL_UINT_UINT_EVENT(name)	\
252 DEFINE_EVENT(ocfs2__ull_uint_uint, name,	\
253 	TP_PROTO(unsigned long long val1,	\
254 		 unsigned int val2, unsigned int val3),	\
255 	TP_ARGS(val1, val2, val3))
256 
257 DECLARE_EVENT_CLASS(ocfs2__uint_uint_uint,
258 	TP_PROTO(unsigned int value1, unsigned int value2,
259 		 unsigned int value3),
260 	TP_ARGS(value1, value2, value3),
261 	TP_STRUCT__entry(
262 		__field(	unsigned int,	value1		)
263 		__field(	unsigned int,	value2		)
264 		__field(	unsigned int,	value3		)
265 	),
266 	TP_fast_assign(
267 		__entry->value1	= 	value1;
268 		__entry->value2	= 	value2;
269 		__entry->value3	= 	value3;
270 	),
271 	TP_printk("%u %u %u", __entry->value1, __entry->value2, __entry->value3)
272 );
273 
274 #define DEFINE_OCFS2_UINT_UINT_UINT_EVENT(name)	\
275 DEFINE_EVENT(ocfs2__uint_uint_uint, name,	\
276 	TP_PROTO(unsigned int value1, unsigned int value2,	\
277 		 unsigned int value3),	\
278 	TP_ARGS(value1, value2, value3))
279 
280 DECLARE_EVENT_CLASS(ocfs2__ull_ull_ull,
281 	TP_PROTO(unsigned long long value1,
282 		 unsigned long long value2, unsigned long long value3),
283 	TP_ARGS(value1, value2, value3),
284 	TP_STRUCT__entry(
285 		__field(unsigned long long, value1)
286 		__field(unsigned long long, value2)
287 		__field(unsigned long long, value3)
288 	),
289 	TP_fast_assign(
290 		__entry->value1 = value1;
291 		__entry->value2 = value2;
292 		__entry->value3 = value3;
293 	),
294 	TP_printk("%llu %llu %llu",
295 		  __entry->value1, __entry->value2, __entry->value3)
296 );
297 
298 #define DEFINE_OCFS2_ULL_ULL_ULL_EVENT(name)	\
299 DEFINE_EVENT(ocfs2__ull_ull_ull, name,	\
300 	TP_PROTO(unsigned long long value1, unsigned long long value2,	\
301 		 unsigned long long value3),	\
302 	TP_ARGS(value1, value2, value3))
303 
304 DECLARE_EVENT_CLASS(ocfs2__ull_int_int_int,
305 	TP_PROTO(unsigned long long ull, int value1, int value2, int value3),
306 	TP_ARGS(ull, value1, value2, value3),
307 	TP_STRUCT__entry(
308 		__field(	unsigned long long,	ull	)
309 		__field(	int,	value1			)
310 		__field(	int,	value2			)
311 		__field(	int,	value3			)
312 	),
313 	TP_fast_assign(
314 		__entry->ull		= ull;
315 		__entry->value1		= value1;
316 		__entry->value2		= value2;
317 		__entry->value3		= value3;
318 	),
319 	TP_printk("%llu %d %d %d",
320 		  __entry->ull, __entry->value1,
321 		  __entry->value2, __entry->value3)
322 );
323 
324 #define DEFINE_OCFS2_ULL_INT_INT_INT_EVENT(name)	\
325 DEFINE_EVENT(ocfs2__ull_int_int_int, name,	\
326 	TP_PROTO(unsigned long long ull, int value1,	\
327 		 int value2, int value3),	\
328 	TP_ARGS(ull, value1, value2, value3))
329 
330 DECLARE_EVENT_CLASS(ocfs2__ull_uint_uint_uint,
331 	TP_PROTO(unsigned long long ull, unsigned int value1,
332 		 unsigned int value2, unsigned int value3),
333 	TP_ARGS(ull, value1, value2, value3),
334 	TP_STRUCT__entry(
335 		__field(unsigned long long, ull)
336 		__field(unsigned int, value1)
337 		__field(unsigned int, value2)
338 		__field(unsigned int, value3)
339 	),
340 	TP_fast_assign(
341 		__entry->ull = ull;
342 		__entry->value1 = value1;
343 		__entry->value2	= value2;
344 		__entry->value3	= value3;
345 	),
346 	TP_printk("%llu %u %u %u",
347 		  __entry->ull, __entry->value1,
348 		  __entry->value2, __entry->value3)
349 );
350 
351 #define DEFINE_OCFS2_ULL_UINT_UINT_UINT_EVENT(name)	\
352 DEFINE_EVENT(ocfs2__ull_uint_uint_uint, name,	\
353 	TP_PROTO(unsigned long long ull, unsigned int value1,	\
354 		 unsigned int value2, unsigned int value3),	\
355 	TP_ARGS(ull, value1, value2, value3))
356 
357 DECLARE_EVENT_CLASS(ocfs2__ull_ull_uint_uint,
358 	TP_PROTO(unsigned long long value1, unsigned long long value2,
359 		 unsigned int value3, unsigned int value4),
360 	TP_ARGS(value1, value2, value3, value4),
361 	TP_STRUCT__entry(
362 		__field(unsigned long long, value1)
363 		__field(unsigned long long, value2)
364 		__field(unsigned int, value3)
365 		__field(unsigned int, value4)
366 	),
367 	TP_fast_assign(
368 		__entry->value1 = value1;
369 		__entry->value2 = value2;
370 		__entry->value3 = value3;
371 		__entry->value4 = value4;
372 	),
373 	TP_printk("%llu %llu %u %u",
374 		  __entry->value1, __entry->value2,
375 		  __entry->value3, __entry->value4)
376 );
377 
378 #define DEFINE_OCFS2_ULL_ULL_UINT_UINT_EVENT(name)	\
379 DEFINE_EVENT(ocfs2__ull_ull_uint_uint, name,	\
380 	TP_PROTO(unsigned long long ull, unsigned long long ull1,	\
381 		 unsigned int value2, unsigned int value3),	\
382 	TP_ARGS(ull, ull1, value2, value3))
383 
384 /* Trace events for fs/ocfs2/alloc.c. */
385 DECLARE_EVENT_CLASS(ocfs2__btree_ops,
386 	TP_PROTO(unsigned long long owner,\
387 		 unsigned int value1, unsigned int value2),
388 	TP_ARGS(owner, value1, value2),
389 	TP_STRUCT__entry(
390 		__field(unsigned long long, owner)
391 		__field(unsigned int, value1)
392 		__field(unsigned int, value2)
393 	),
394 	TP_fast_assign(
395 		__entry->owner = owner;
396 		__entry->value1 = value1;
397 		__entry->value2	= value2;
398 	),
399 	TP_printk("%llu %u %u",
400 		  __entry->owner, __entry->value1, __entry->value2)
401 );
402 
403 #define DEFINE_OCFS2_BTREE_EVENT(name)	\
404 DEFINE_EVENT(ocfs2__btree_ops, name,	\
405 	TP_PROTO(unsigned long long owner,	\
406 		 unsigned int value1, unsigned int value2),	\
407 	TP_ARGS(owner, value1, value2))
408 
409 DEFINE_OCFS2_BTREE_EVENT(ocfs2_adjust_rightmost_branch);
410 
411 DEFINE_OCFS2_BTREE_EVENT(ocfs2_rotate_tree_right);
412 
413 DEFINE_OCFS2_BTREE_EVENT(ocfs2_append_rec_to_path);
414 
415 DEFINE_OCFS2_BTREE_EVENT(ocfs2_insert_extent_start);
416 
417 DEFINE_OCFS2_BTREE_EVENT(ocfs2_add_clusters_in_btree);
418 
419 DEFINE_OCFS2_INT_EVENT(ocfs2_num_free_extents);
420 
421 DEFINE_OCFS2_INT_EVENT(ocfs2_complete_edge_insert);
422 
423 TRACE_EVENT(ocfs2_grow_tree,
424 	TP_PROTO(unsigned long long owner, int depth),
425 	TP_ARGS(owner, depth),
426 	TP_STRUCT__entry(
427 		__field(unsigned long long, owner)
428 		__field(int, depth)
429 	),
430 	TP_fast_assign(
431 		__entry->owner = owner;
432 		__entry->depth = depth;
433 	),
434 	TP_printk("%llu %d", __entry->owner, __entry->depth)
435 );
436 
437 TRACE_EVENT(ocfs2_rotate_subtree,
438 	TP_PROTO(int subtree_root, unsigned long long blkno,
439 		 int depth),
440 	TP_ARGS(subtree_root, blkno, depth),
441 	TP_STRUCT__entry(
442 		__field(int, subtree_root)
443 		__field(unsigned long long, blkno)
444 		__field(int, depth)
445 	),
446 	TP_fast_assign(
447 		__entry->subtree_root = subtree_root;
448 		__entry->blkno = blkno;
449 		__entry->depth = depth;
450 	),
451 	TP_printk("%d %llu %d", __entry->subtree_root,
452 		  __entry->blkno, __entry->depth)
453 );
454 
455 TRACE_EVENT(ocfs2_insert_extent,
456 	TP_PROTO(unsigned int ins_appending, unsigned int ins_contig,
457 		 int ins_contig_index, int free_records, int ins_tree_depth),
458 	TP_ARGS(ins_appending, ins_contig, ins_contig_index, free_records,
459 		ins_tree_depth),
460 	TP_STRUCT__entry(
461 		__field(unsigned int, ins_appending)
462 		__field(unsigned int, ins_contig)
463 		__field(int, ins_contig_index)
464 		__field(int, free_records)
465 		__field(int, ins_tree_depth)
466 	),
467 	TP_fast_assign(
468 		__entry->ins_appending = ins_appending;
469 		__entry->ins_contig = ins_contig;
470 		__entry->ins_contig_index = ins_contig_index;
471 		__entry->free_records = free_records;
472 		__entry->ins_tree_depth = ins_tree_depth;
473 	),
474 	TP_printk("%u %u %d %d %d",
475 		  __entry->ins_appending, __entry->ins_contig,
476 		  __entry->ins_contig_index, __entry->free_records,
477 		  __entry->ins_tree_depth)
478 );
479 
480 TRACE_EVENT(ocfs2_split_extent,
481 	TP_PROTO(int split_index, unsigned int c_contig_type,
482 		 unsigned int c_has_empty_extent,
483 		 unsigned int c_split_covers_rec),
484 	TP_ARGS(split_index, c_contig_type,
485 		c_has_empty_extent, c_split_covers_rec),
486 	TP_STRUCT__entry(
487 		__field(int, split_index)
488 		__field(unsigned int, c_contig_type)
489 		__field(unsigned int, c_has_empty_extent)
490 		__field(unsigned int, c_split_covers_rec)
491 	),
492 	TP_fast_assign(
493 		__entry->split_index = split_index;
494 		__entry->c_contig_type = c_contig_type;
495 		__entry->c_has_empty_extent = c_has_empty_extent;
496 		__entry->c_split_covers_rec = c_split_covers_rec;
497 	),
498 	TP_printk("%d %u %u %u", __entry->split_index, __entry->c_contig_type,
499 		  __entry->c_has_empty_extent, __entry->c_split_covers_rec)
500 );
501 
502 TRACE_EVENT(ocfs2_remove_extent,
503 	TP_PROTO(unsigned long long owner, unsigned int cpos,
504 		 unsigned int len, int index,
505 		 unsigned int e_cpos, unsigned int clusters),
506 	TP_ARGS(owner, cpos, len, index, e_cpos, clusters),
507 	TP_STRUCT__entry(
508 		__field(unsigned long long, owner)
509 		__field(unsigned int, cpos)
510 		__field(unsigned int, len)
511 		__field(int, index)
512 		__field(unsigned int, e_cpos)
513 		__field(unsigned int, clusters)
514 	),
515 	TP_fast_assign(
516 		__entry->owner = owner;
517 		__entry->cpos = cpos;
518 		__entry->len = len;
519 		__entry->index = index;
520 		__entry->e_cpos = e_cpos;
521 		__entry->clusters = clusters;
522 	),
523 	TP_printk("%llu %u %u %d %u %u",
524 		  __entry->owner, __entry->cpos, __entry->len, __entry->index,
525 		  __entry->e_cpos, __entry->clusters)
526 );
527 
528 TRACE_EVENT(ocfs2_commit_truncate,
529 	TP_PROTO(unsigned long long ino, unsigned int new_cpos,
530 		 unsigned int clusters, unsigned int depth),
531 	TP_ARGS(ino, new_cpos, clusters, depth),
532 	TP_STRUCT__entry(
533 		__field(unsigned long long, ino)
534 		__field(unsigned int, new_cpos)
535 		__field(unsigned int, clusters)
536 		__field(unsigned int, depth)
537 	),
538 	TP_fast_assign(
539 		__entry->ino = ino;
540 		__entry->new_cpos = new_cpos;
541 		__entry->clusters = clusters;
542 		__entry->depth = depth;
543 	),
544 	TP_printk("%llu %u %u %u",
545 		  __entry->ino, __entry->new_cpos,
546 		  __entry->clusters, __entry->depth)
547 );
548 
549 TRACE_EVENT(ocfs2_validate_extent_block,
550 	TP_PROTO(unsigned long long blkno),
551 	TP_ARGS(blkno),
552 	TP_STRUCT__entry(
553 		__field(unsigned long long, blkno)
554 	),
555 	TP_fast_assign(
556 		__entry->blkno = blkno;
557 	),
558 	TP_printk("%llu ", __entry->blkno)
559 );
560 
561 TRACE_EVENT(ocfs2_rotate_leaf,
562 	TP_PROTO(unsigned int insert_cpos, int insert_index,
563 		 int has_empty, int next_free,
564 		 unsigned int l_count),
565 	TP_ARGS(insert_cpos, insert_index, has_empty,
566 		next_free, l_count),
567 	TP_STRUCT__entry(
568 		__field(unsigned int, insert_cpos)
569 		__field(int, insert_index)
570 		__field(int, has_empty)
571 		__field(int, next_free)
572 		__field(unsigned int, l_count)
573 	),
574 	TP_fast_assign(
575 		__entry->insert_cpos = insert_cpos;
576 		__entry->insert_index = insert_index;
577 		__entry->has_empty = has_empty;
578 		__entry->next_free = next_free;
579 		__entry->l_count = l_count;
580 	),
581 	TP_printk("%u %d %d %d %u", __entry->insert_cpos,
582 		  __entry->insert_index, __entry->has_empty,
583 		  __entry->next_free, __entry->l_count)
584 );
585 
586 TRACE_EVENT(ocfs2_add_clusters_in_btree_ret,
587 	TP_PROTO(int status, int reason, int err),
588 	TP_ARGS(status, reason, err),
589 	TP_STRUCT__entry(
590 		__field(int, status)
591 		__field(int, reason)
592 		__field(int, err)
593 	),
594 	TP_fast_assign(
595 		__entry->status = status;
596 		__entry->reason = reason;
597 		__entry->err = err;
598 	),
599 	TP_printk("%d %d %d", __entry->status,
600 		  __entry->reason, __entry->err)
601 );
602 
603 TRACE_EVENT(ocfs2_mark_extent_written,
604 	TP_PROTO(unsigned long long owner, unsigned int cpos,
605 		 unsigned int len, unsigned int phys),
606 	TP_ARGS(owner, cpos, len, phys),
607 	TP_STRUCT__entry(
608 		__field(unsigned long long, owner)
609 		__field(unsigned int, cpos)
610 		__field(unsigned int, len)
611 		__field(unsigned int, phys)
612 	),
613 	TP_fast_assign(
614 		__entry->owner = owner;
615 		__entry->cpos = cpos;
616 		__entry->len = len;
617 		__entry->phys = phys;
618 	),
619 	TP_printk("%llu %u %u %u",
620 		  __entry->owner, __entry->cpos,
621 		  __entry->len, __entry->phys)
622 );
623 
624 DECLARE_EVENT_CLASS(ocfs2__truncate_log_ops,
625 	TP_PROTO(unsigned long long blkno, int index,
626 		 unsigned int start, unsigned int num),
627 	TP_ARGS(blkno, index, start, num),
628 	TP_STRUCT__entry(
629 		__field(unsigned long long, blkno)
630 		__field(int, index)
631 		__field(unsigned int, start)
632 		__field(unsigned int, num)
633 	),
634 	TP_fast_assign(
635 		__entry->blkno = blkno;
636 		__entry->index = index;
637 		__entry->start = start;
638 		__entry->num = num;
639 	),
640 	TP_printk("%llu %d %u %u",
641 		  __entry->blkno, __entry->index,
642 		  __entry->start, __entry->num)
643 );
644 
645 #define DEFINE_OCFS2_TRUNCATE_LOG_OPS_EVENT(name)	\
646 DEFINE_EVENT(ocfs2__truncate_log_ops, name,	\
647 	TP_PROTO(unsigned long long blkno, int index,	\
648 		 unsigned int start, unsigned int num),	\
649 	TP_ARGS(blkno, index, start, num))
650 
651 DEFINE_OCFS2_TRUNCATE_LOG_OPS_EVENT(ocfs2_truncate_log_append);
652 
653 DEFINE_OCFS2_TRUNCATE_LOG_OPS_EVENT(ocfs2_replay_truncate_records);
654 
655 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_flush_truncate_log);
656 
657 DEFINE_OCFS2_INT_EVENT(ocfs2_begin_truncate_log_recovery);
658 
659 DEFINE_OCFS2_INT_EVENT(ocfs2_truncate_log_recovery_num);
660 
661 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_complete_truncate_log_recovery);
662 
663 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_free_cached_blocks);
664 
665 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_cache_cluster_dealloc);
666 
667 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_run_deallocs);
668 
669 TRACE_EVENT(ocfs2_cache_block_dealloc,
670 	TP_PROTO(int type, int slot, unsigned long long suballoc,
671 		 unsigned long long blkno, unsigned int bit),
672 	TP_ARGS(type, slot, suballoc, blkno, bit),
673 	TP_STRUCT__entry(
674 		__field(int, type)
675 		__field(int, slot)
676 		__field(unsigned long long, suballoc)
677 		__field(unsigned long long, blkno)
678 		__field(unsigned int, bit)
679 	),
680 	TP_fast_assign(
681 		__entry->type = type;
682 		__entry->slot = slot;
683 		__entry->suballoc = suballoc;
684 		__entry->blkno = blkno;
685 		__entry->bit = bit;
686 	),
687 	TP_printk("%d %d %llu %llu %u",
688 		  __entry->type, __entry->slot, __entry->suballoc,
689 		  __entry->blkno, __entry->bit)
690 );
691 
692 TRACE_EVENT(ocfs2_trim_extent,
693 	TP_PROTO(struct super_block *sb, unsigned long long blk,
694 		 unsigned long long count),
695 	TP_ARGS(sb, blk, count),
696 	TP_STRUCT__entry(
697 		__field(int, dev_major)
698 		__field(int, dev_minor)
699 		__field(unsigned long long, blk)
700 		__field(__u64,	count)
701 	),
702 	TP_fast_assign(
703 		__entry->dev_major = MAJOR(sb->s_dev);
704 		__entry->dev_minor = MINOR(sb->s_dev);
705 		__entry->blk = blk;
706 		__entry->count = count;
707 	),
708 	TP_printk("%d %d %llu %llu",
709 		  __entry->dev_major, __entry->dev_minor,
710 		  __entry->blk, __entry->count)
711 );
712 
713 DEFINE_OCFS2_ULL_UINT_UINT_UINT_EVENT(ocfs2_trim_group);
714 
715 DEFINE_OCFS2_ULL_ULL_ULL_EVENT(ocfs2_trim_mainbm);
716 
717 DEFINE_OCFS2_ULL_ULL_ULL_EVENT(ocfs2_trim_fs);
718 
719 /* End of trace events for fs/ocfs2/alloc.c. */
720 
721 /* Trace events for fs/ocfs2/localalloc.c. */
722 
723 DEFINE_OCFS2_UINT_UINT_UINT_EVENT(ocfs2_la_set_sizes);
724 
725 DEFINE_OCFS2_ULL_INT_INT_INT_EVENT(ocfs2_alloc_should_use_local);
726 
727 DEFINE_OCFS2_INT_EVENT(ocfs2_load_local_alloc);
728 
729 DEFINE_OCFS2_INT_EVENT(ocfs2_begin_local_alloc_recovery);
730 
731 DEFINE_OCFS2_ULL_INT_INT_INT_EVENT(ocfs2_reserve_local_alloc_bits);
732 
733 DEFINE_OCFS2_UINT_EVENT(ocfs2_local_alloc_count_bits);
734 
735 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_local_alloc_find_clear_bits_search_bitmap);
736 
737 DEFINE_OCFS2_ULL_INT_INT_INT_EVENT(ocfs2_local_alloc_find_clear_bits);
738 
739 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_sync_local_to_main);
740 
741 TRACE_EVENT(ocfs2_sync_local_to_main_free,
742 	TP_PROTO(int count, int bit, unsigned long long start_blk,
743 		 unsigned long long blkno),
744 	TP_ARGS(count, bit, start_blk, blkno),
745 	TP_STRUCT__entry(
746 		__field(int, count)
747 		__field(int, bit)
748 		__field(unsigned long long, start_blk)
749 		__field(unsigned long long, blkno)
750 	),
751 	TP_fast_assign(
752 		__entry->count = count;
753 		__entry->bit = bit;
754 		__entry->start_blk = start_blk;
755 		__entry->blkno = blkno;
756 	),
757 	TP_printk("%d %d %llu %llu",
758 		  __entry->count, __entry->bit, __entry->start_blk,
759 		  __entry->blkno)
760 );
761 
762 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_local_alloc_new_window);
763 
764 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_local_alloc_new_window_result);
765 
766 /* End of trace events for fs/ocfs2/localalloc.c. */
767 
768 /* Trace events for fs/ocfs2/resize.c. */
769 
770 DEFINE_OCFS2_UINT_UINT_EVENT(ocfs2_update_last_group_and_inode);
771 
772 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_group_extend);
773 
774 DEFINE_OCFS2_ULL_UINT_UINT_UINT_EVENT(ocfs2_group_add);
775 
776 /* End of trace events for fs/ocfs2/resize.c. */
777 
778 /* Trace events for fs/ocfs2/suballoc.c. */
779 
780 DEFINE_OCFS2_ULL_EVENT(ocfs2_validate_group_descriptor);
781 
782 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_block_group_alloc_contig);
783 
784 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_block_group_alloc_discontig);
785 
786 DEFINE_OCFS2_ULL_EVENT(ocfs2_block_group_alloc);
787 
788 DEFINE_OCFS2_UINT_UINT_EVENT(ocfs2_reserve_suballoc_bits_nospc);
789 
790 DEFINE_OCFS2_UINT_UINT_UINT_EVENT(ocfs2_reserve_suballoc_bits_no_new_group);
791 
792 DEFINE_OCFS2_ULL_EVENT(ocfs2_reserve_new_inode_new_group);
793 
794 DEFINE_OCFS2_UINT_UINT_EVENT(ocfs2_block_group_set_bits);
795 
796 TRACE_EVENT(ocfs2_relink_block_group,
797 	TP_PROTO(unsigned long long i_blkno, unsigned int chain,
798 		 unsigned long long bg_blkno,
799 		 unsigned long long prev_blkno),
800 	TP_ARGS(i_blkno, chain, bg_blkno, prev_blkno),
801 	TP_STRUCT__entry(
802 		__field(unsigned long long, i_blkno)
803 		__field(unsigned int, chain)
804 		__field(unsigned long long, bg_blkno)
805 		__field(unsigned long long, prev_blkno)
806 	),
807 	TP_fast_assign(
808 		__entry->i_blkno = i_blkno;
809 		__entry->chain = chain;
810 		__entry->bg_blkno = bg_blkno;
811 		__entry->prev_blkno = prev_blkno;
812 	),
813 	TP_printk("%llu %u %llu %llu",
814 		  __entry->i_blkno, __entry->chain, __entry->bg_blkno,
815 		  __entry->prev_blkno)
816 );
817 
818 DEFINE_OCFS2_ULL_UINT_UINT_UINT_EVENT(ocfs2_cluster_group_search_wrong_max_bits);
819 
820 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_cluster_group_search_max_block);
821 
822 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_block_group_search_max_block);
823 
824 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_search_chain_begin);
825 
826 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_search_chain_succ);
827 
828 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_search_chain_end);
829 
830 DEFINE_OCFS2_UINT_EVENT(ocfs2_claim_suballoc_bits);
831 
832 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_claim_new_inode_at_loc);
833 
834 DEFINE_OCFS2_UINT_UINT_EVENT(ocfs2_block_group_clear_bits);
835 
836 TRACE_EVENT(ocfs2_free_suballoc_bits,
837 	TP_PROTO(unsigned long long inode, unsigned long long group,
838 		 unsigned int start_bit, unsigned int count),
839 	TP_ARGS(inode, group, start_bit, count),
840 	TP_STRUCT__entry(
841 		__field(unsigned long long, inode)
842 		__field(unsigned long long, group)
843 		__field(unsigned int, start_bit)
844 		__field(unsigned int, count)
845 	),
846 	TP_fast_assign(
847 		__entry->inode = inode;
848 		__entry->group = group;
849 		__entry->start_bit = start_bit;
850 		__entry->count = count;
851 	),
852 	TP_printk("%llu %llu %u %u", __entry->inode, __entry->group,
853 		  __entry->start_bit, __entry->count)
854 );
855 
856 TRACE_EVENT(ocfs2_free_clusters,
857 	TP_PROTO(unsigned long long bg_blkno, unsigned long long start_blk,
858 		 unsigned int start_bit, unsigned int count),
859 	TP_ARGS(bg_blkno, start_blk, start_bit, count),
860 	TP_STRUCT__entry(
861 		__field(unsigned long long, bg_blkno)
862 		__field(unsigned long long, start_blk)
863 		__field(unsigned int, start_bit)
864 		__field(unsigned int, count)
865 	),
866 	TP_fast_assign(
867 		__entry->bg_blkno = bg_blkno;
868 		__entry->start_blk = start_blk;
869 		__entry->start_bit = start_bit;
870 		__entry->count = count;
871 	),
872 	TP_printk("%llu %llu %u %u", __entry->bg_blkno, __entry->start_blk,
873 		  __entry->start_bit, __entry->count)
874 );
875 
876 DEFINE_OCFS2_ULL_EVENT(ocfs2_get_suballoc_slot_bit);
877 
878 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_test_suballoc_bit);
879 
880 DEFINE_OCFS2_ULL_EVENT(ocfs2_test_inode_bit);
881 
882 /* End of trace events for fs/ocfs2/suballoc.c. */
883 
884 /* Trace events for fs/ocfs2/refcounttree.c. */
885 
886 DEFINE_OCFS2_ULL_EVENT(ocfs2_validate_refcount_block);
887 
888 DEFINE_OCFS2_ULL_EVENT(ocfs2_purge_refcount_trees);
889 
890 DEFINE_OCFS2_ULL_EVENT(ocfs2_create_refcount_tree);
891 
892 DEFINE_OCFS2_ULL_EVENT(ocfs2_create_refcount_tree_blkno);
893 
894 DEFINE_OCFS2_ULL_INT_INT_INT_EVENT(ocfs2_change_refcount_rec);
895 
896 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_expand_inline_ref_root);
897 
898 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_divide_leaf_refcount_block);
899 
900 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_new_leaf_refcount_block);
901 
902 DECLARE_EVENT_CLASS(ocfs2__refcount_tree_ops,
903 	TP_PROTO(unsigned long long blkno, int index,
904 		 unsigned long long cpos,
905 		 unsigned int clusters, unsigned int refcount),
906 	TP_ARGS(blkno, index, cpos, clusters, refcount),
907 	TP_STRUCT__entry(
908 		__field(unsigned long long, blkno)
909 		__field(int, index)
910 		__field(unsigned long long, cpos)
911 		__field(unsigned int, clusters)
912 		__field(unsigned int, refcount)
913 	),
914 	TP_fast_assign(
915 		__entry->blkno = blkno;
916 		__entry->index = index;
917 		__entry->cpos = cpos;
918 		__entry->clusters = clusters;
919 		__entry->refcount = refcount;
920 	),
921 	TP_printk("%llu %d %llu %u %u", __entry->blkno, __entry->index,
922 		  __entry->cpos, __entry->clusters, __entry->refcount)
923 );
924 
925 #define DEFINE_OCFS2_REFCOUNT_TREE_OPS_EVENT(name)	\
926 DEFINE_EVENT(ocfs2__refcount_tree_ops, name,		\
927 	TP_PROTO(unsigned long long blkno, int index,	\
928 		 unsigned long long cpos,		\
929 		 unsigned int count, unsigned int refcount),	\
930 	TP_ARGS(blkno, index, cpos, count, refcount))
931 
932 DEFINE_OCFS2_REFCOUNT_TREE_OPS_EVENT(ocfs2_insert_refcount_rec);
933 
934 TRACE_EVENT(ocfs2_split_refcount_rec,
935 	TP_PROTO(unsigned long long cpos,
936 		 unsigned int clusters, unsigned int refcount,
937 		 unsigned long long split_cpos,
938 		 unsigned int split_clusters, unsigned int split_refcount),
939 	TP_ARGS(cpos, clusters, refcount,
940 		split_cpos, split_clusters, split_refcount),
941 	TP_STRUCT__entry(
942 		__field(unsigned long long, cpos)
943 		__field(unsigned int, clusters)
944 		__field(unsigned int, refcount)
945 		__field(unsigned long long, split_cpos)
946 		__field(unsigned int, split_clusters)
947 		__field(unsigned int, split_refcount)
948 	),
949 	TP_fast_assign(
950 		__entry->cpos = cpos;
951 		__entry->clusters = clusters;
952 		__entry->refcount = refcount;
953 		__entry->split_cpos = split_cpos;
954 		__entry->split_clusters = split_clusters;
955 		__entry->split_refcount	= split_refcount;
956 	),
957 	TP_printk("%llu %u %u %llu %u %u",
958 		  __entry->cpos, __entry->clusters, __entry->refcount,
959 		  __entry->split_cpos, __entry->split_clusters,
960 		  __entry->split_refcount)
961 );
962 
963 DEFINE_OCFS2_REFCOUNT_TREE_OPS_EVENT(ocfs2_split_refcount_rec_insert);
964 
965 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_increase_refcount_begin);
966 
967 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_increase_refcount_change);
968 
969 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_increase_refcount_insert);
970 
971 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_increase_refcount_split);
972 
973 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_remove_refcount_extent);
974 
975 DEFINE_OCFS2_ULL_EVENT(ocfs2_restore_refcount_block);
976 
977 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_decrease_refcount_rec);
978 
979 TRACE_EVENT(ocfs2_decrease_refcount,
980 	TP_PROTO(unsigned long long owner,
981 		 unsigned long long cpos,
982 		 unsigned int len, int delete),
983 	TP_ARGS(owner, cpos, len, delete),
984 	TP_STRUCT__entry(
985 		__field(unsigned long long, owner)
986 		__field(unsigned long long, cpos)
987 		__field(unsigned int, len)
988 		__field(int, delete)
989 	),
990 	TP_fast_assign(
991 		__entry->owner = owner;
992 		__entry->cpos = cpos;
993 		__entry->len = len;
994 		__entry->delete = delete;
995 	),
996 	TP_printk("%llu %llu %u %d",
997 		  __entry->owner, __entry->cpos, __entry->len, __entry->delete)
998 );
999 
1000 DEFINE_OCFS2_ULL_UINT_UINT_UINT_EVENT(ocfs2_mark_extent_refcounted);
1001 
1002 DEFINE_OCFS2_ULL_UINT_UINT_UINT_EVENT(ocfs2_calc_refcount_meta_credits);
1003 
1004 TRACE_EVENT(ocfs2_calc_refcount_meta_credits_iterate,
1005 	TP_PROTO(int recs_add, unsigned long long cpos,
1006 		 unsigned int clusters, unsigned long long r_cpos,
1007 		 unsigned int r_clusters, unsigned int refcount, int index),
1008 	TP_ARGS(recs_add, cpos, clusters, r_cpos, r_clusters, refcount, index),
1009 	TP_STRUCT__entry(
1010 		__field(int, recs_add)
1011 		__field(unsigned long long, cpos)
1012 		__field(unsigned int, clusters)
1013 		__field(unsigned long long, r_cpos)
1014 		__field(unsigned int, r_clusters)
1015 		__field(unsigned int, refcount)
1016 		__field(int, index)
1017 	),
1018 	TP_fast_assign(
1019 		__entry->recs_add = recs_add;
1020 		__entry->cpos = cpos;
1021 		__entry->clusters = clusters;
1022 		__entry->r_cpos = r_cpos;
1023 		__entry->r_clusters = r_clusters;
1024 		__entry->refcount = refcount;
1025 		__entry->index = index;
1026 	),
1027 	TP_printk("%d %llu %u %llu %u %u %d",
1028 		  __entry->recs_add, __entry->cpos, __entry->clusters,
1029 		  __entry->r_cpos, __entry->r_clusters,
1030 		  __entry->refcount, __entry->index)
1031 );
1032 
1033 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_add_refcount_flag);
1034 
1035 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_prepare_refcount_change_for_del);
1036 
1037 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_lock_refcount_allocators);
1038 
1039 DEFINE_OCFS2_ULL_UINT_UINT_UINT_EVENT(ocfs2_duplicate_clusters_by_page);
1040 
1041 DEFINE_OCFS2_ULL_UINT_UINT_UINT_EVENT(ocfs2_duplicate_clusters_by_jbd);
1042 
1043 TRACE_EVENT(ocfs2_clear_ext_refcount,
1044 	TP_PROTO(unsigned long long ino, unsigned int cpos,
1045 		 unsigned int len, unsigned int p_cluster,
1046 		 unsigned int ext_flags),
1047 	TP_ARGS(ino, cpos, len, p_cluster, ext_flags),
1048 	TP_STRUCT__entry(
1049 		__field(unsigned long long, ino)
1050 		__field(unsigned int, cpos)
1051 		__field(unsigned int, len)
1052 		__field(unsigned int, p_cluster)
1053 		__field(unsigned int, ext_flags)
1054 	),
1055 	TP_fast_assign(
1056 		__entry->ino = ino;
1057 		__entry->cpos = cpos;
1058 		__entry->len = len;
1059 		__entry->p_cluster = p_cluster;
1060 		__entry->ext_flags = ext_flags;
1061 	),
1062 	TP_printk("%llu %u %u %u %u",
1063 		  __entry->ino, __entry->cpos, __entry->len,
1064 		  __entry->p_cluster, __entry->ext_flags)
1065 );
1066 
1067 TRACE_EVENT(ocfs2_replace_clusters,
1068 	TP_PROTO(unsigned long long ino, unsigned int cpos,
1069 		 unsigned int old, unsigned int new, unsigned int len,
1070 		 unsigned int ext_flags),
1071 	TP_ARGS(ino, cpos, old, new, len, ext_flags),
1072 	TP_STRUCT__entry(
1073 		__field(unsigned long long, ino)
1074 		__field(unsigned int, cpos)
1075 		__field(unsigned int, old)
1076 		__field(unsigned int, new)
1077 		__field(unsigned int, len)
1078 		__field(unsigned int, ext_flags)
1079 	),
1080 	TP_fast_assign(
1081 		__entry->ino = ino;
1082 		__entry->cpos = cpos;
1083 		__entry->old = old;
1084 		__entry->new = new;
1085 		__entry->len = len;
1086 		__entry->ext_flags = ext_flags;
1087 	),
1088 	TP_printk("%llu %u %u %u %u %u",
1089 		  __entry->ino, __entry->cpos, __entry->old, __entry->new,
1090 		  __entry->len, __entry->ext_flags)
1091 );
1092 
1093 DEFINE_OCFS2_ULL_UINT_UINT_UINT_EVENT(ocfs2_make_clusters_writable);
1094 
1095 TRACE_EVENT(ocfs2_refcount_cow_hunk,
1096 	TP_PROTO(unsigned long long ino, unsigned int cpos,
1097 		 unsigned int write_len, unsigned int max_cpos,
1098 		 unsigned int cow_start, unsigned int cow_len),
1099 	TP_ARGS(ino, cpos, write_len, max_cpos, cow_start, cow_len),
1100 	TP_STRUCT__entry(
1101 		__field(unsigned long long, ino)
1102 		__field(unsigned int, cpos)
1103 		__field(unsigned int, write_len)
1104 		__field(unsigned int, max_cpos)
1105 		__field(unsigned int, cow_start)
1106 		__field(unsigned int, cow_len)
1107 	),
1108 	TP_fast_assign(
1109 		__entry->ino = ino;
1110 		__entry->cpos = cpos;
1111 		__entry->write_len = write_len;
1112 		__entry->max_cpos = max_cpos;
1113 		__entry->cow_start = cow_start;
1114 		__entry->cow_len = cow_len;
1115 	),
1116 	TP_printk("%llu %u %u %u %u %u",
1117 		  __entry->ino, __entry->cpos, __entry->write_len,
1118 		  __entry->max_cpos, __entry->cow_start, __entry->cow_len)
1119 );
1120 
1121 /* End of trace events for fs/ocfs2/refcounttree.c. */
1122 
1123 /* Trace events for fs/ocfs2/aops.c. */
1124 
1125 DECLARE_EVENT_CLASS(ocfs2__get_block,
1126 	TP_PROTO(unsigned long long ino, unsigned long long iblock,
1127 		 void *bh_result, int create),
1128 	TP_ARGS(ino, iblock, bh_result, create),
1129 	TP_STRUCT__entry(
1130 		__field(unsigned long long, ino)
1131 		__field(unsigned long long, iblock)
1132 		__field(void *, bh_result)
1133 		__field(int, create)
1134 	),
1135 	TP_fast_assign(
1136 		__entry->ino = ino;
1137 		__entry->iblock = iblock;
1138 		__entry->bh_result = bh_result;
1139 		__entry->create = create;
1140 	),
1141 	TP_printk("%llu %llu %p %d",
1142 		  __entry->ino, __entry->iblock,
1143 		  __entry->bh_result, __entry->create)
1144 );
1145 
1146 #define DEFINE_OCFS2_GET_BLOCK_EVENT(name)	\
1147 DEFINE_EVENT(ocfs2__get_block, name,	\
1148 	TP_PROTO(unsigned long long ino, unsigned long long iblock,	\
1149 		 void *bh_result, int create),	\
1150 	TP_ARGS(ino, iblock, bh_result, create))
1151 
1152 DEFINE_OCFS2_GET_BLOCK_EVENT(ocfs2_symlink_get_block);
1153 
1154 DEFINE_OCFS2_GET_BLOCK_EVENT(ocfs2_get_block);
1155 
1156 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_get_block_end);
1157 
1158 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_readpage);
1159 
1160 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_writepage);
1161 
1162 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_bmap);
1163 
1164 TRACE_EVENT(ocfs2_try_to_write_inline_data,
1165 	TP_PROTO(unsigned long long ino, unsigned int len,
1166 		 unsigned long long pos, unsigned int flags),
1167 	TP_ARGS(ino, len, pos, flags),
1168 	TP_STRUCT__entry(
1169 		__field(unsigned long long, ino)
1170 		__field(unsigned int, len)
1171 		__field(unsigned long long, pos)
1172 		__field(unsigned int, flags)
1173 	),
1174 	TP_fast_assign(
1175 		__entry->ino = ino;
1176 		__entry->len = len;
1177 		__entry->pos = pos;
1178 		__entry->flags = flags;
1179 	),
1180 	TP_printk("%llu %u %llu 0x%x",
1181 		  __entry->ino, __entry->len, __entry->pos, __entry->flags)
1182 );
1183 
1184 TRACE_EVENT(ocfs2_write_begin_nolock,
1185 	TP_PROTO(unsigned long long ino,
1186 		 long long i_size, unsigned int i_clusters,
1187 		 unsigned long long pos, unsigned int len,
1188 		 unsigned int flags, void *page,
1189 		 unsigned int clusters, unsigned int extents_to_split),
1190 	TP_ARGS(ino, i_size, i_clusters, pos, len, flags,
1191 		page, clusters, extents_to_split),
1192 	TP_STRUCT__entry(
1193 		__field(unsigned long long, ino)
1194 		__field(long long, i_size)
1195 		__field(unsigned int, i_clusters)
1196 		__field(unsigned long long, pos)
1197 		__field(unsigned int, len)
1198 		__field(unsigned int, flags)
1199 		__field(void *, page)
1200 		__field(unsigned int, clusters)
1201 		__field(unsigned int, extents_to_split)
1202 	),
1203 	TP_fast_assign(
1204 		__entry->ino = ino;
1205 		__entry->i_size = i_size;
1206 		__entry->i_clusters = i_clusters;
1207 		__entry->pos = pos;
1208 		__entry->len = len;
1209 		__entry->flags = flags;
1210 		__entry->page = page;
1211 		__entry->clusters = clusters;
1212 		__entry->extents_to_split = extents_to_split;
1213 	),
1214 	TP_printk("%llu %lld %u %llu %u %u %p %u %u",
1215 		  __entry->ino, __entry->i_size, __entry->i_clusters,
1216 		  __entry->pos, __entry->len,
1217 		  __entry->flags, __entry->page, __entry->clusters,
1218 		  __entry->extents_to_split)
1219 );
1220 
1221 TRACE_EVENT(ocfs2_write_end_inline,
1222 	TP_PROTO(unsigned long long ino,
1223 		 unsigned long long pos, unsigned int copied,
1224 		 unsigned int id_count, unsigned int features),
1225 	TP_ARGS(ino, pos, copied, id_count, features),
1226 	TP_STRUCT__entry(
1227 		__field(unsigned long long, ino)
1228 		__field(unsigned long long, pos)
1229 		__field(unsigned int, copied)
1230 		__field(unsigned int, id_count)
1231 		__field(unsigned int, features)
1232 	),
1233 	TP_fast_assign(
1234 		__entry->ino = ino;
1235 		__entry->pos = pos;
1236 		__entry->copied = copied;
1237 		__entry->id_count = id_count;
1238 		__entry->features = features;
1239 	),
1240 	TP_printk("%llu %llu %u %u %u",
1241 		  __entry->ino, __entry->pos, __entry->copied,
1242 		  __entry->id_count, __entry->features)
1243 );
1244 
1245 /* End of trace events for fs/ocfs2/aops.c. */
1246 
1247 /* Trace events for fs/ocfs2/mmap.c. */
1248 
1249 TRACE_EVENT(ocfs2_fault,
1250 	TP_PROTO(unsigned long long ino,
1251 		 void *area, void *page, unsigned long pgoff),
1252 	TP_ARGS(ino, area, page, pgoff),
1253 	TP_STRUCT__entry(
1254 		__field(unsigned long long, ino)
1255 		__field(void *, area)
1256 		__field(void *, page)
1257 		__field(unsigned long, pgoff)
1258 	),
1259 	TP_fast_assign(
1260 		__entry->ino = ino;
1261 		__entry->area = area;
1262 		__entry->page = page;
1263 		__entry->pgoff = pgoff;
1264 	),
1265 	TP_printk("%llu %p %p %lu",
1266 		  __entry->ino, __entry->area, __entry->page, __entry->pgoff)
1267 );
1268 
1269 /* End of trace events for fs/ocfs2/mmap.c. */
1270 
1271 /* Trace events for fs/ocfs2/file.c. */
1272 
1273 DECLARE_EVENT_CLASS(ocfs2__file_ops,
1274 	TP_PROTO(void *inode, void *file, void *dentry,
1275 		 unsigned long long ino,
1276 		 unsigned int d_len, const unsigned char *d_name,
1277 		 unsigned long long para),
1278 	TP_ARGS(inode, file, dentry, ino, d_len, d_name, para),
1279 	TP_STRUCT__entry(
1280 		__field(void *, inode)
1281 		__field(void *, file)
1282 		__field(void *, dentry)
1283 		__field(unsigned long long, ino)
1284 		__field(unsigned int, d_len)
1285 		__string(d_name, d_name)
1286 		__field(unsigned long long, para)
1287 	),
1288 	TP_fast_assign(
1289 		__entry->inode = inode;
1290 		__entry->file = file;
1291 		__entry->dentry = dentry;
1292 		__entry->ino = ino;
1293 		__entry->d_len = d_len;
1294 		__assign_str(d_name, d_name);
1295 		__entry->para = para;
1296 	),
1297 	TP_printk("%p %p %p %llu %llu %.*s", __entry->inode, __entry->file,
1298 		  __entry->dentry, __entry->ino, __entry->para,
1299 		  __entry->d_len, __get_str(d_name))
1300 );
1301 
1302 #define DEFINE_OCFS2_FILE_OPS(name)				\
1303 DEFINE_EVENT(ocfs2__file_ops, name,				\
1304 TP_PROTO(void *inode, void *file, void *dentry,			\
1305 	 unsigned long long ino,				\
1306 	 unsigned int d_len, const unsigned char *d_name,	\
1307 	 unsigned long long mode),				\
1308 	TP_ARGS(inode, file, dentry, ino, d_len, d_name, mode))
1309 
1310 DEFINE_OCFS2_FILE_OPS(ocfs2_file_open);
1311 
1312 DEFINE_OCFS2_FILE_OPS(ocfs2_file_release);
1313 
1314 DEFINE_OCFS2_FILE_OPS(ocfs2_sync_file);
1315 
1316 DEFINE_OCFS2_FILE_OPS(ocfs2_file_write_iter);
1317 
1318 DEFINE_OCFS2_FILE_OPS(ocfs2_file_splice_write);
1319 
1320 DEFINE_OCFS2_FILE_OPS(ocfs2_file_read_iter);
1321 
1322 DEFINE_OCFS2_ULL_ULL_ULL_EVENT(ocfs2_truncate_file);
1323 
1324 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_truncate_file_error);
1325 
1326 TRACE_EVENT(ocfs2_extend_allocation,
1327 	TP_PROTO(unsigned long long ip_blkno, unsigned long long size,
1328 		 unsigned int clusters, unsigned int clusters_to_add,
1329 		 int why, int restart_func),
1330 	TP_ARGS(ip_blkno, size, clusters, clusters_to_add, why, restart_func),
1331 	TP_STRUCT__entry(
1332 		__field(unsigned long long, ip_blkno)
1333 		__field(unsigned long long, size)
1334 		__field(unsigned int, clusters)
1335 		__field(unsigned int, clusters_to_add)
1336 		__field(int, why)
1337 		__field(int, restart_func)
1338 	),
1339 	TP_fast_assign(
1340 		__entry->ip_blkno = ip_blkno;
1341 		__entry->size = size;
1342 		__entry->clusters = clusters;
1343 		__entry->clusters_to_add = clusters_to_add;
1344 		__entry->why = why;
1345 		__entry->restart_func = restart_func;
1346 	),
1347 	TP_printk("%llu %llu %u %u %d %d",
1348 		  __entry->ip_blkno, __entry->size, __entry->clusters,
1349 		  __entry->clusters_to_add, __entry->why, __entry->restart_func)
1350 );
1351 
1352 TRACE_EVENT(ocfs2_extend_allocation_end,
1353 	TP_PROTO(unsigned long long ino,
1354 		 unsigned int di_clusters, unsigned long long di_size,
1355 		 unsigned int ip_clusters, unsigned long long i_size),
1356 	TP_ARGS(ino, di_clusters, di_size, ip_clusters, i_size),
1357 	TP_STRUCT__entry(
1358 		__field(unsigned long long, ino)
1359 		__field(unsigned int, di_clusters)
1360 		__field(unsigned long long, di_size)
1361 		__field(unsigned int, ip_clusters)
1362 		__field(unsigned long long, i_size)
1363 	),
1364 	TP_fast_assign(
1365 		__entry->ino = ino;
1366 		__entry->di_clusters = di_clusters;
1367 		__entry->di_size = di_size;
1368 		__entry->ip_clusters = ip_clusters;
1369 		__entry->i_size = i_size;
1370 	),
1371 	TP_printk("%llu %u %llu %u %llu", __entry->ino, __entry->di_clusters,
1372 		  __entry->di_size, __entry->ip_clusters, __entry->i_size)
1373 );
1374 
1375 TRACE_EVENT(ocfs2_write_zero_page,
1376 	TP_PROTO(unsigned long long ino,
1377 		 unsigned long long abs_from, unsigned long long abs_to,
1378 		 unsigned long index, unsigned int zero_from,
1379 		 unsigned int zero_to),
1380 	TP_ARGS(ino, abs_from, abs_to, index, zero_from, zero_to),
1381 	TP_STRUCT__entry(
1382 		__field(unsigned long long, ino)
1383 		__field(unsigned long long, abs_from)
1384 		__field(unsigned long long, abs_to)
1385 		__field(unsigned long, index)
1386 		__field(unsigned int, zero_from)
1387 		__field(unsigned int, zero_to)
1388 	),
1389 	TP_fast_assign(
1390 		__entry->ino = ino;
1391 		__entry->abs_from = abs_from;
1392 		__entry->abs_to = abs_to;
1393 		__entry->index = index;
1394 		__entry->zero_from = zero_from;
1395 		__entry->zero_to = zero_to;
1396 	),
1397 	TP_printk("%llu %llu %llu %lu %u %u", __entry->ino,
1398 		  __entry->abs_from, __entry->abs_to,
1399 		  __entry->index, __entry->zero_from, __entry->zero_to)
1400 );
1401 
1402 DEFINE_OCFS2_ULL_ULL_ULL_EVENT(ocfs2_zero_extend_range);
1403 
1404 DEFINE_OCFS2_ULL_ULL_ULL_EVENT(ocfs2_zero_extend);
1405 
1406 TRACE_EVENT(ocfs2_setattr,
1407 	TP_PROTO(void *inode, void *dentry,
1408 		 unsigned long long ino,
1409 		 unsigned int d_len, const unsigned char *d_name,
1410 		 unsigned int ia_valid, unsigned int ia_mode,
1411 		 unsigned int ia_uid, unsigned int ia_gid),
1412 	TP_ARGS(inode, dentry, ino, d_len, d_name,
1413 		ia_valid, ia_mode, ia_uid, ia_gid),
1414 	TP_STRUCT__entry(
1415 		__field(void *, inode)
1416 		__field(void *, dentry)
1417 		__field(unsigned long long, ino)
1418 		__field(unsigned int, d_len)
1419 		__string(d_name, d_name)
1420 		__field(unsigned int, ia_valid)
1421 		__field(unsigned int, ia_mode)
1422 		__field(unsigned int, ia_uid)
1423 		__field(unsigned int, ia_gid)
1424 	),
1425 	TP_fast_assign(
1426 		__entry->inode = inode;
1427 		__entry->dentry = dentry;
1428 		__entry->ino = ino;
1429 		__entry->d_len = d_len;
1430 		__assign_str(d_name, d_name);
1431 		__entry->ia_valid = ia_valid;
1432 		__entry->ia_mode = ia_mode;
1433 		__entry->ia_uid = ia_uid;
1434 		__entry->ia_gid = ia_gid;
1435 	),
1436 	TP_printk("%p %p %llu %.*s %u %u %u %u", __entry->inode,
1437 		  __entry->dentry, __entry->ino, __entry->d_len,
1438 		  __get_str(d_name), __entry->ia_valid, __entry->ia_mode,
1439 		  __entry->ia_uid, __entry->ia_gid)
1440 );
1441 
1442 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_write_remove_suid);
1443 
1444 DEFINE_OCFS2_ULL_ULL_ULL_EVENT(ocfs2_zero_partial_clusters);
1445 
1446 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_zero_partial_clusters_range1);
1447 
1448 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_zero_partial_clusters_range2);
1449 
1450 DEFINE_OCFS2_ULL_ULL_ULL_EVENT(ocfs2_remove_inode_range);
1451 
1452 TRACE_EVENT(ocfs2_prepare_inode_for_write,
1453 	TP_PROTO(unsigned long long ino, unsigned long long saved_pos,
1454 		 unsigned long count, int wait),
1455 	TP_ARGS(ino, saved_pos, count, wait),
1456 	TP_STRUCT__entry(
1457 		__field(unsigned long long, ino)
1458 		__field(unsigned long long, saved_pos)
1459 		__field(unsigned long, count)
1460 		__field(int, wait)
1461 	),
1462 	TP_fast_assign(
1463 		__entry->ino = ino;
1464 		__entry->saved_pos = saved_pos;
1465 		__entry->count = count;
1466 		__entry->wait = wait;
1467 	),
1468 	TP_printk("%llu %llu %lu %d", __entry->ino,
1469 		  __entry->saved_pos, __entry->count, __entry->wait)
1470 );
1471 
1472 DEFINE_OCFS2_INT_EVENT(generic_file_read_iter_ret);
1473 
1474 /* End of trace events for fs/ocfs2/file.c. */
1475 
1476 /* Trace events for fs/ocfs2/inode.c. */
1477 
1478 TRACE_EVENT(ocfs2_iget_begin,
1479 	TP_PROTO(unsigned long long ino, unsigned int flags, int sysfile_type),
1480 	TP_ARGS(ino, flags, sysfile_type),
1481 	TP_STRUCT__entry(
1482 		__field(unsigned long long, ino)
1483 		__field(unsigned int, flags)
1484 		__field(int, sysfile_type)
1485 	),
1486 	TP_fast_assign(
1487 		__entry->ino = ino;
1488 		__entry->flags = flags;
1489 		__entry->sysfile_type = sysfile_type;
1490 	),
1491 	TP_printk("%llu %u %d", __entry->ino,
1492 		  __entry->flags, __entry->sysfile_type)
1493 );
1494 
1495 DEFINE_OCFS2_ULL_EVENT(ocfs2_iget5_locked);
1496 
1497 TRACE_EVENT(ocfs2_iget_end,
1498 	TP_PROTO(void *inode, unsigned long long ino),
1499 	TP_ARGS(inode, ino),
1500 	TP_STRUCT__entry(
1501 		__field(void *, inode)
1502 		__field(unsigned long long, ino)
1503 	),
1504 	TP_fast_assign(
1505 		__entry->inode = inode;
1506 		__entry->ino = ino;
1507 	),
1508 	TP_printk("%p %llu", __entry->inode, __entry->ino)
1509 );
1510 
1511 TRACE_EVENT(ocfs2_find_actor,
1512 	TP_PROTO(void *inode, unsigned long long ino,
1513 		 void *args,  unsigned long long fi_blkno),
1514 	TP_ARGS(inode, ino, args, fi_blkno),
1515 	TP_STRUCT__entry(
1516 		__field(void *, inode)
1517 		__field(unsigned long long, ino)
1518 		__field(void *, args)
1519 		__field(unsigned long long, fi_blkno)
1520 	),
1521 	TP_fast_assign(
1522 		__entry->inode = inode;
1523 		__entry->ino = ino;
1524 		__entry->args = args;
1525 		__entry->fi_blkno = fi_blkno;
1526 	),
1527 	TP_printk("%p %llu %p %llu", __entry->inode, __entry->ino,
1528 		  __entry->args, __entry->fi_blkno)
1529 );
1530 
1531 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_populate_inode);
1532 
1533 DEFINE_OCFS2_ULL_INT_EVENT(ocfs2_read_locked_inode);
1534 
1535 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_check_orphan_recovery_state);
1536 
1537 DEFINE_OCFS2_ULL_EVENT(ocfs2_validate_inode_block);
1538 DEFINE_OCFS2_ULL_EVENT(ocfs2_filecheck_validate_inode_block);
1539 DEFINE_OCFS2_ULL_EVENT(ocfs2_filecheck_repair_inode_block);
1540 
1541 TRACE_EVENT(ocfs2_inode_is_valid_to_delete,
1542 	TP_PROTO(void *task, void *dc_task, unsigned long long ino,
1543 		 unsigned int flags),
1544 	TP_ARGS(task, dc_task, ino, flags),
1545 	TP_STRUCT__entry(
1546 		__field(void *, task)
1547 		__field(void *, dc_task)
1548 		__field(unsigned long long, ino)
1549 		__field(unsigned int, flags)
1550 	),
1551 	TP_fast_assign(
1552 		__entry->task = task;
1553 		__entry->dc_task = dc_task;
1554 		__entry->ino = ino;
1555 		__entry->flags = flags;
1556 	),
1557 	TP_printk("%p %p %llu %u", __entry->task, __entry->dc_task,
1558 		  __entry->ino, __entry->flags)
1559 );
1560 
1561 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_query_inode_wipe_begin);
1562 
1563 DEFINE_OCFS2_UINT_EVENT(ocfs2_query_inode_wipe_succ);
1564 
1565 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_query_inode_wipe_end);
1566 
1567 DEFINE_OCFS2_ULL_INT_EVENT(ocfs2_cleanup_delete_inode);
1568 
1569 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_delete_inode);
1570 
1571 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_clear_inode);
1572 
1573 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_drop_inode);
1574 
1575 TRACE_EVENT(ocfs2_inode_revalidate,
1576 	TP_PROTO(void *inode, unsigned long long ino,
1577 		 unsigned int flags),
1578 	TP_ARGS(inode, ino, flags),
1579 	TP_STRUCT__entry(
1580 		__field(void *, inode)
1581 		__field(unsigned long long, ino)
1582 		__field(unsigned int, flags)
1583 	),
1584 	TP_fast_assign(
1585 		__entry->inode = inode;
1586 		__entry->ino = ino;
1587 		__entry->flags = flags;
1588 	),
1589 	TP_printk("%p %llu %u", __entry->inode, __entry->ino, __entry->flags)
1590 );
1591 
1592 DEFINE_OCFS2_ULL_EVENT(ocfs2_mark_inode_dirty);
1593 
1594 /* End of trace events for fs/ocfs2/inode.c. */
1595 
1596 /* Trace events for fs/ocfs2/extent_map.c. */
1597 
1598 TRACE_EVENT(ocfs2_read_virt_blocks,
1599 	TP_PROTO(void *inode, unsigned long long vblock, int nr,
1600 		 void *bhs, unsigned int flags, void *validate),
1601 	TP_ARGS(inode, vblock, nr, bhs, flags, validate),
1602 	TP_STRUCT__entry(
1603 		__field(void *, inode)
1604 		__field(unsigned long long, vblock)
1605 		__field(int, nr)
1606 		__field(void *, bhs)
1607 		__field(unsigned int, flags)
1608 		__field(void *, validate)
1609 	),
1610 	TP_fast_assign(
1611 		__entry->inode = inode;
1612 		__entry->vblock = vblock;
1613 		__entry->nr = nr;
1614 		__entry->bhs = bhs;
1615 		__entry->flags = flags;
1616 		__entry->validate = validate;
1617 	),
1618 	TP_printk("%p %llu %d %p %x %p", __entry->inode, __entry->vblock,
1619 		  __entry->nr, __entry->bhs, __entry->flags, __entry->validate)
1620 );
1621 
1622 /* End of trace events for fs/ocfs2/extent_map.c. */
1623 
1624 /* Trace events for fs/ocfs2/slot_map.c. */
1625 
1626 DEFINE_OCFS2_UINT_EVENT(ocfs2_refresh_slot_info);
1627 
1628 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_map_slot_buffers);
1629 
1630 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_map_slot_buffers_block);
1631 
1632 DEFINE_OCFS2_INT_EVENT(ocfs2_find_slot);
1633 
1634 /* End of trace events for fs/ocfs2/slot_map.c. */
1635 
1636 /* Trace events for fs/ocfs2/heartbeat.c. */
1637 
1638 DEFINE_OCFS2_INT_EVENT(ocfs2_do_node_down);
1639 
1640 /* End of trace events for fs/ocfs2/heartbeat.c. */
1641 
1642 /* Trace events for fs/ocfs2/super.c. */
1643 
1644 TRACE_EVENT(ocfs2_remount,
1645 	TP_PROTO(unsigned long s_flags, unsigned long osb_flags, int flags),
1646 	TP_ARGS(s_flags, osb_flags, flags),
1647 	TP_STRUCT__entry(
1648 		__field(unsigned long, s_flags)
1649 		__field(unsigned long, osb_flags)
1650 		__field(int, flags)
1651 	),
1652 	TP_fast_assign(
1653 		__entry->s_flags = s_flags;
1654 		__entry->osb_flags = osb_flags;
1655 		__entry->flags = flags;
1656 	),
1657 	TP_printk("%lu %lu %d", __entry->s_flags,
1658 		  __entry->osb_flags, __entry->flags)
1659 );
1660 
1661 TRACE_EVENT(ocfs2_fill_super,
1662 	TP_PROTO(void *sb, void *data, int silent),
1663 	TP_ARGS(sb, data, silent),
1664 	TP_STRUCT__entry(
1665 		__field(void *, sb)
1666 		__field(void *, data)
1667 		__field(int, silent)
1668 	),
1669 	TP_fast_assign(
1670 		__entry->sb = sb;
1671 		__entry->data = data;
1672 		__entry->silent = silent;
1673 	),
1674 	TP_printk("%p %p %d", __entry->sb,
1675 		  __entry->data, __entry->silent)
1676 );
1677 
1678 TRACE_EVENT(ocfs2_parse_options,
1679 	TP_PROTO(int is_remount, char *options),
1680 	TP_ARGS(is_remount, options),
1681 	TP_STRUCT__entry(
1682 		__field(int, is_remount)
1683 		__string(options, options)
1684 	),
1685 	TP_fast_assign(
1686 		__entry->is_remount = is_remount;
1687 		__assign_str(options, options);
1688 	),
1689 	TP_printk("%d %s", __entry->is_remount, __get_str(options))
1690 );
1691 
1692 DEFINE_OCFS2_POINTER_EVENT(ocfs2_put_super);
1693 
1694 TRACE_EVENT(ocfs2_statfs,
1695 	TP_PROTO(void *sb, void *buf),
1696 	TP_ARGS(sb, buf),
1697 	TP_STRUCT__entry(
1698 		__field(void *, sb)
1699 		__field(void *, buf)
1700 	),
1701 	TP_fast_assign(
1702 		__entry->sb = sb;
1703 		__entry->buf = buf;
1704 	),
1705 	TP_printk("%p %p", __entry->sb, __entry->buf)
1706 );
1707 
1708 DEFINE_OCFS2_POINTER_EVENT(ocfs2_dismount_volume);
1709 
1710 TRACE_EVENT(ocfs2_initialize_super,
1711 	TP_PROTO(char *label, char *uuid_str, unsigned long long root_dir,
1712 		 unsigned long long system_dir, int cluster_bits),
1713 	TP_ARGS(label, uuid_str, root_dir, system_dir, cluster_bits),
1714 	TP_STRUCT__entry(
1715 		__string(label, label)
1716 		__string(uuid_str, uuid_str)
1717 		__field(unsigned long long, root_dir)
1718 		__field(unsigned long long, system_dir)
1719 		__field(int, cluster_bits)
1720 	),
1721 	TP_fast_assign(
1722 		__assign_str(label, label);
1723 		__assign_str(uuid_str, uuid_str);
1724 		__entry->root_dir = root_dir;
1725 		__entry->system_dir = system_dir;
1726 		__entry->cluster_bits = cluster_bits;
1727 	),
1728 	TP_printk("%s %s %llu %llu %d", __get_str(label), __get_str(uuid_str),
1729 		  __entry->root_dir, __entry->system_dir, __entry->cluster_bits)
1730 );
1731 
1732 /* End of trace events for fs/ocfs2/super.c. */
1733 
1734 /* Trace events for fs/ocfs2/xattr.c. */
1735 
1736 DEFINE_OCFS2_ULL_EVENT(ocfs2_validate_xattr_block);
1737 
1738 DEFINE_OCFS2_UINT_EVENT(ocfs2_xattr_extend_allocation);
1739 
1740 TRACE_EVENT(ocfs2_init_xattr_set_ctxt,
1741 	TP_PROTO(const char *name, int meta, int clusters, int credits),
1742 	TP_ARGS(name, meta, clusters, credits),
1743 	TP_STRUCT__entry(
1744 		__string(name, name)
1745 		__field(int, meta)
1746 		__field(int, clusters)
1747 		__field(int, credits)
1748 	),
1749 	TP_fast_assign(
1750 		__assign_str(name, name);
1751 		__entry->meta = meta;
1752 		__entry->clusters = clusters;
1753 		__entry->credits = credits;
1754 	),
1755 	TP_printk("%s %d %d %d", __get_str(name), __entry->meta,
1756 		  __entry->clusters, __entry->credits)
1757 );
1758 
1759 DECLARE_EVENT_CLASS(ocfs2__xattr_find,
1760 	TP_PROTO(unsigned long long ino, const char *name, int name_index,
1761 		 unsigned int hash, unsigned long long location,
1762 		 int xe_index),
1763 	TP_ARGS(ino, name, name_index, hash, location, xe_index),
1764 	TP_STRUCT__entry(
1765 		__field(unsigned long long, ino)
1766 		__string(name, name)
1767 		__field(int, name_index)
1768 		__field(unsigned int, hash)
1769 		__field(unsigned long long, location)
1770 		__field(int, xe_index)
1771 	),
1772 	TP_fast_assign(
1773 		__entry->ino = ino;
1774 		__assign_str(name, name);
1775 		__entry->name_index = name_index;
1776 		__entry->hash = hash;
1777 		__entry->location = location;
1778 		__entry->xe_index = xe_index;
1779 	),
1780 	TP_printk("%llu %s %d %u %llu %d", __entry->ino, __get_str(name),
1781 		  __entry->name_index, __entry->hash, __entry->location,
1782 		  __entry->xe_index)
1783 );
1784 
1785 #define DEFINE_OCFS2_XATTR_FIND_EVENT(name)					\
1786 DEFINE_EVENT(ocfs2__xattr_find, name,					\
1787 TP_PROTO(unsigned long long ino, const char *name, int name_index,	\
1788 	 unsigned int hash, unsigned long long bucket,			\
1789 	 int xe_index),							\
1790 	TP_ARGS(ino, name, name_index, hash, bucket, xe_index))
1791 
1792 DEFINE_OCFS2_XATTR_FIND_EVENT(ocfs2_xattr_bucket_find);
1793 
1794 DEFINE_OCFS2_XATTR_FIND_EVENT(ocfs2_xattr_index_block_find);
1795 
1796 DEFINE_OCFS2_XATTR_FIND_EVENT(ocfs2_xattr_index_block_find_rec);
1797 
1798 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_iterate_xattr_buckets);
1799 
1800 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_iterate_xattr_bucket);
1801 
1802 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_cp_xattr_block_to_bucket_begin);
1803 
1804 DEFINE_OCFS2_UINT_UINT_UINT_EVENT(ocfs2_cp_xattr_block_to_bucket_end);
1805 
1806 DEFINE_OCFS2_ULL_EVENT(ocfs2_xattr_create_index_block_begin);
1807 
1808 DEFINE_OCFS2_ULL_EVENT(ocfs2_xattr_create_index_block);
1809 
1810 DEFINE_OCFS2_ULL_UINT_UINT_UINT_EVENT(ocfs2_defrag_xattr_bucket);
1811 
1812 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_mv_xattr_bucket_cross_cluster);
1813 
1814 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_divide_xattr_bucket_begin);
1815 
1816 DEFINE_OCFS2_UINT_UINT_UINT_EVENT(ocfs2_divide_xattr_bucket_move);
1817 
1818 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_cp_xattr_bucket);
1819 
1820 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_mv_xattr_buckets);
1821 
1822 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_adjust_xattr_cross_cluster);
1823 
1824 DEFINE_OCFS2_ULL_ULL_UINT_UINT_EVENT(ocfs2_add_new_xattr_cluster_begin);
1825 
1826 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_add_new_xattr_cluster);
1827 
1828 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_add_new_xattr_cluster_insert);
1829 
1830 DEFINE_OCFS2_ULL_ULL_UINT_UINT_EVENT(ocfs2_extend_xattr_bucket);
1831 
1832 DEFINE_OCFS2_ULL_EVENT(ocfs2_add_new_xattr_bucket);
1833 
1834 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_xattr_bucket_value_truncate);
1835 
1836 DEFINE_OCFS2_ULL_ULL_UINT_UINT_EVENT(ocfs2_rm_xattr_cluster);
1837 
1838 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_reflink_xattr_header);
1839 
1840 DEFINE_OCFS2_ULL_INT_EVENT(ocfs2_create_empty_xattr_block);
1841 
1842 DEFINE_OCFS2_STRING_EVENT(ocfs2_xattr_set_entry_bucket);
1843 
1844 DEFINE_OCFS2_STRING_EVENT(ocfs2_xattr_set_entry_index_block);
1845 
1846 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_xattr_bucket_value_refcount);
1847 
1848 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_reflink_xattr_buckets);
1849 
1850 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_reflink_xattr_rec);
1851 
1852 /* End of trace events for fs/ocfs2/xattr.c. */
1853 
1854 /* Trace events for fs/ocfs2/reservations.c. */
1855 
1856 DEFINE_OCFS2_UINT_UINT_EVENT(ocfs2_resv_insert);
1857 
1858 DEFINE_OCFS2_ULL_UINT_UINT_UINT_EVENT(ocfs2_resmap_find_free_bits_begin);
1859 
1860 DEFINE_OCFS2_UINT_UINT_EVENT(ocfs2_resmap_find_free_bits_end);
1861 
1862 TRACE_EVENT(ocfs2_resv_find_window_begin,
1863 	TP_PROTO(unsigned int r_start, unsigned int r_end, unsigned int goal,
1864 		 unsigned int wanted, int empty_root),
1865 	TP_ARGS(r_start, r_end, goal, wanted, empty_root),
1866 	TP_STRUCT__entry(
1867 		__field(unsigned int, r_start)
1868 		__field(unsigned int, r_end)
1869 		__field(unsigned int, goal)
1870 		__field(unsigned int, wanted)
1871 		__field(int, empty_root)
1872 	),
1873 	TP_fast_assign(
1874 		__entry->r_start = r_start;
1875 		__entry->r_end = r_end;
1876 		__entry->goal = goal;
1877 		__entry->wanted = wanted;
1878 		__entry->empty_root = empty_root;
1879 	),
1880 	TP_printk("%u %u %u %u %d", __entry->r_start, __entry->r_end,
1881 		  __entry->goal, __entry->wanted, __entry->empty_root)
1882 );
1883 
1884 DEFINE_OCFS2_UINT_UINT_EVENT(ocfs2_resv_find_window_prev);
1885 
1886 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_resv_find_window_next);
1887 
1888 DEFINE_OCFS2_UINT_UINT_UINT_EVENT(ocfs2_cannibalize_resv_begin);
1889 
1890 TRACE_EVENT(ocfs2_cannibalize_resv_end,
1891 	TP_PROTO(unsigned int start, unsigned int end, unsigned int len,
1892 		 unsigned int last_start, unsigned int last_len),
1893 	TP_ARGS(start, end, len, last_start, last_len),
1894 	TP_STRUCT__entry(
1895 		__field(unsigned int, start)
1896 		__field(unsigned int, end)
1897 		__field(unsigned int, len)
1898 		__field(unsigned int, last_start)
1899 		__field(unsigned int, last_len)
1900 	),
1901 	TP_fast_assign(
1902 		__entry->start = start;
1903 		__entry->end = end;
1904 		__entry->len = len;
1905 		__entry->last_start = last_start;
1906 		__entry->last_len = last_len;
1907 	),
1908 	TP_printk("%u %u %u %u %u", __entry->start, __entry->end,
1909 		  __entry->len, __entry->last_start, __entry->last_len)
1910 );
1911 
1912 DEFINE_OCFS2_UINT_UINT_EVENT(ocfs2_resmap_resv_bits);
1913 
1914 TRACE_EVENT(ocfs2_resmap_claimed_bits_begin,
1915 	TP_PROTO(unsigned int cstart, unsigned int cend, unsigned int clen,
1916 		 unsigned int r_start, unsigned int r_end, unsigned int r_len,
1917 		 unsigned int last_start, unsigned int last_len),
1918 	TP_ARGS(cstart, cend, clen, r_start, r_end,
1919 		r_len, last_start, last_len),
1920 	TP_STRUCT__entry(
1921 		__field(unsigned int, cstart)
1922 		__field(unsigned int, cend)
1923 		__field(unsigned int, clen)
1924 		__field(unsigned int, r_start)
1925 		__field(unsigned int, r_end)
1926 		__field(unsigned int, r_len)
1927 		__field(unsigned int, last_start)
1928 		__field(unsigned int, last_len)
1929 	),
1930 	TP_fast_assign(
1931 		__entry->cstart = cstart;
1932 		__entry->cend = cend;
1933 		__entry->clen = clen;
1934 		__entry->r_start = r_start;
1935 		__entry->r_end = r_end;
1936 		__entry->r_len = r_len;
1937 		__entry->last_start = last_start;
1938 		__entry->last_len = last_len;
1939 	),
1940 	TP_printk("%u %u %u %u %u %u %u %u",
1941 		  __entry->cstart, __entry->cend, __entry->clen,
1942 		  __entry->r_start, __entry->r_end, __entry->r_len,
1943 		  __entry->last_start, __entry->last_len)
1944 );
1945 
1946 TRACE_EVENT(ocfs2_resmap_claimed_bits_end,
1947 	TP_PROTO(unsigned int start, unsigned int end, unsigned int len,
1948 		 unsigned int last_start, unsigned int last_len),
1949 	TP_ARGS(start, end, len, last_start, last_len),
1950 	TP_STRUCT__entry(
1951 		__field(unsigned int, start)
1952 		__field(unsigned int, end)
1953 		__field(unsigned int, len)
1954 		__field(unsigned int, last_start)
1955 		__field(unsigned int, last_len)
1956 	),
1957 	TP_fast_assign(
1958 		__entry->start = start;
1959 		__entry->end = end;
1960 		__entry->len = len;
1961 		__entry->last_start = last_start;
1962 		__entry->last_len = last_len;
1963 	),
1964 	TP_printk("%u %u %u %u %u", __entry->start, __entry->end,
1965 		  __entry->len, __entry->last_start, __entry->last_len)
1966 );
1967 
1968 /* End of trace events for fs/ocfs2/reservations.c. */
1969 
1970 /* Trace events for fs/ocfs2/quota_local.c. */
1971 
1972 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_recover_local_quota_file);
1973 
1974 DEFINE_OCFS2_INT_EVENT(ocfs2_finish_quota_recovery);
1975 
1976 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(olq_set_dquot);
1977 
1978 /* End of trace events for fs/ocfs2/quota_local.c. */
1979 
1980 /* Trace events for fs/ocfs2/quota_global.c. */
1981 
1982 DEFINE_OCFS2_ULL_EVENT(ocfs2_validate_quota_block);
1983 
1984 TRACE_EVENT(ocfs2_sync_dquot,
1985 	TP_PROTO(unsigned int dq_id, long long dqb_curspace,
1986 		 long long spacechange, long long curinodes,
1987 		 long long inodechange),
1988 	TP_ARGS(dq_id, dqb_curspace, spacechange, curinodes, inodechange),
1989 	TP_STRUCT__entry(
1990 		__field(unsigned int, dq_id)
1991 		__field(long long, dqb_curspace)
1992 		__field(long long, spacechange)
1993 		__field(long long, curinodes)
1994 		__field(long long, inodechange)
1995 	),
1996 	TP_fast_assign(
1997 		__entry->dq_id = dq_id;
1998 		__entry->dqb_curspace = dqb_curspace;
1999 		__entry->spacechange = spacechange;
2000 		__entry->curinodes = curinodes;
2001 		__entry->inodechange = inodechange;
2002 	),
2003 	TP_printk("%u %lld %lld %lld %lld", __entry->dq_id,
2004 		  __entry->dqb_curspace, __entry->spacechange,
2005 		  __entry->curinodes, __entry->inodechange)
2006 );
2007 
2008 TRACE_EVENT(ocfs2_sync_dquot_helper,
2009 	TP_PROTO(unsigned int dq_id, unsigned int dq_type, unsigned long type,
2010 		 const char *s_id),
2011 	TP_ARGS(dq_id, dq_type, type, s_id),
2012 
2013 	TP_STRUCT__entry(
2014 		__field(unsigned int, dq_id)
2015 		__field(unsigned int, dq_type)
2016 		__field(unsigned long, type)
2017 		__string(s_id, s_id)
2018 	),
2019 	TP_fast_assign(
2020 		__entry->dq_id = dq_id;
2021 		__entry->dq_type = dq_type;
2022 		__entry->type = type;
2023 		__assign_str(s_id, s_id);
2024 	),
2025 	TP_printk("%u %u %lu %s", __entry->dq_id, __entry->dq_type,
2026 		  __entry->type, __get_str(s_id))
2027 );
2028 
2029 DEFINE_OCFS2_UINT_INT_EVENT(ocfs2_write_dquot);
2030 
2031 DEFINE_OCFS2_UINT_INT_EVENT(ocfs2_release_dquot);
2032 
2033 DEFINE_OCFS2_UINT_INT_EVENT(ocfs2_acquire_dquot);
2034 
2035 DEFINE_OCFS2_UINT_INT_EVENT(ocfs2_get_next_id);
2036 
2037 DEFINE_OCFS2_UINT_INT_EVENT(ocfs2_mark_dquot_dirty);
2038 
2039 /* End of trace events for fs/ocfs2/quota_global.c. */
2040 
2041 /* Trace events for fs/ocfs2/dir.c. */
2042 DEFINE_OCFS2_INT_EVENT(ocfs2_search_dirblock);
2043 
2044 DEFINE_OCFS2_ULL_EVENT(ocfs2_validate_dir_block);
2045 
2046 DEFINE_OCFS2_POINTER_EVENT(ocfs2_find_entry_el);
2047 
2048 TRACE_EVENT(ocfs2_dx_dir_search,
2049 	TP_PROTO(unsigned long long ino, int namelen, const char *name,
2050 		 unsigned int major_hash, unsigned int minor_hash,
2051 		 unsigned long long blkno),
2052 	TP_ARGS(ino, namelen, name, major_hash, minor_hash, blkno),
2053 	TP_STRUCT__entry(
2054 		__field(unsigned long long, ino)
2055 		__field(int, namelen)
2056 		__string(name, name)
2057 		__field(unsigned int, major_hash)
2058 		__field(unsigned int,minor_hash)
2059 		__field(unsigned long long, blkno)
2060 	),
2061 	TP_fast_assign(
2062 		__entry->ino = ino;
2063 		__entry->namelen = namelen;
2064 		__assign_str(name, name);
2065 		__entry->major_hash = major_hash;
2066 		__entry->minor_hash = minor_hash;
2067 		__entry->blkno = blkno;
2068 	),
2069 	TP_printk("%llu %.*s %u %u %llu", __entry->ino,
2070 		   __entry->namelen, __get_str(name),
2071 		  __entry->major_hash, __entry->minor_hash, __entry->blkno)
2072 );
2073 
2074 DEFINE_OCFS2_UINT_UINT_EVENT(ocfs2_dx_dir_search_leaf_info);
2075 
2076 DEFINE_OCFS2_ULL_INT_EVENT(ocfs2_delete_entry_dx);
2077 
2078 DEFINE_OCFS2_ULL_EVENT(ocfs2_readdir);
2079 
2080 TRACE_EVENT(ocfs2_find_files_on_disk,
2081 	TP_PROTO(int namelen, const char *name, void *blkno,
2082 		 unsigned long long dir),
2083 	TP_ARGS(namelen, name, blkno, dir),
2084 	TP_STRUCT__entry(
2085 		__field(int, namelen)
2086 		__string(name, name)
2087 		__field(void *, blkno)
2088 		__field(unsigned long long, dir)
2089 	),
2090 	TP_fast_assign(
2091 		__entry->namelen = namelen;
2092 		__assign_str(name, name);
2093 		__entry->blkno = blkno;
2094 		__entry->dir = dir;
2095 	),
2096 	TP_printk("%.*s %p %llu", __entry->namelen, __get_str(name),
2097 		  __entry->blkno, __entry->dir)
2098 );
2099 
2100 TRACE_EVENT(ocfs2_check_dir_for_entry,
2101 	TP_PROTO(unsigned long long dir, int namelen, const char *name),
2102 	TP_ARGS(dir, namelen, name),
2103 	TP_STRUCT__entry(
2104 		__field(unsigned long long, dir)
2105 		__field(int, namelen)
2106 		__string(name, name)
2107 	),
2108 	TP_fast_assign(
2109 		__entry->dir = dir;
2110 		__entry->namelen = namelen;
2111 		__assign_str(name, name);
2112 	),
2113 	TP_printk("%llu %.*s", __entry->dir,
2114 		  __entry->namelen, __get_str(name))
2115 );
2116 
2117 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_dx_dir_attach_index);
2118 
2119 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_dx_dir_format_cluster);
2120 
2121 TRACE_EVENT(ocfs2_dx_dir_index_root_block,
2122 	TP_PROTO(unsigned long long dir,
2123 		 unsigned int major_hash, unsigned int minor_hash,
2124 		 int namelen, const char *name, unsigned int num_used),
2125 	TP_ARGS(dir, major_hash, minor_hash, namelen, name, num_used),
2126 	TP_STRUCT__entry(
2127 		__field(unsigned long long, dir)
2128 		__field(unsigned int, major_hash)
2129 		__field(unsigned int, minor_hash)
2130 		__field(int, namelen)
2131 		__string(name, name)
2132 		__field(unsigned int, num_used)
2133 	),
2134 	TP_fast_assign(
2135 		__entry->dir = dir;
2136 		__entry->major_hash = major_hash;
2137 		__entry->minor_hash = minor_hash;
2138 		__entry->namelen = namelen;
2139 		__assign_str(name, name);
2140 		__entry->num_used = num_used;
2141 	),
2142 	TP_printk("%llu %x %x %.*s %u", __entry->dir,
2143 		  __entry->major_hash, __entry->minor_hash,
2144 		   __entry->namelen, __get_str(name), __entry->num_used)
2145 );
2146 
2147 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_extend_dir);
2148 
2149 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_dx_dir_rebalance);
2150 
2151 DEFINE_OCFS2_UINT_UINT_UINT_EVENT(ocfs2_dx_dir_rebalance_split);
2152 
2153 DEFINE_OCFS2_ULL_INT_EVENT(ocfs2_prepare_dir_for_insert);
2154 
2155 /* End of trace events for fs/ocfs2/dir.c. */
2156 
2157 /* Trace events for fs/ocfs2/namei.c. */
2158 
2159 DECLARE_EVENT_CLASS(ocfs2__dentry_ops,
2160 	TP_PROTO(void *dir, void *dentry, int name_len, const char *name,
2161 		 unsigned long long dir_blkno, unsigned long long extra),
2162 	TP_ARGS(dir, dentry, name_len, name, dir_blkno, extra),
2163 	TP_STRUCT__entry(
2164 		__field(void *, dir)
2165 		__field(void *, dentry)
2166 		__field(int, name_len)
2167 		__string(name, name)
2168 		__field(unsigned long long, dir_blkno)
2169 		__field(unsigned long long, extra)
2170 	),
2171 	TP_fast_assign(
2172 		__entry->dir = dir;
2173 		__entry->dentry = dentry;
2174 		__entry->name_len = name_len;
2175 		__assign_str(name, name);
2176 		__entry->dir_blkno = dir_blkno;
2177 		__entry->extra = extra;
2178 	),
2179 	TP_printk("%p %p %.*s %llu %llu", __entry->dir, __entry->dentry,
2180 		  __entry->name_len, __get_str(name),
2181 		  __entry->dir_blkno, __entry->extra)
2182 );
2183 
2184 #define DEFINE_OCFS2_DENTRY_OPS(name)					\
2185 DEFINE_EVENT(ocfs2__dentry_ops, name,					\
2186 TP_PROTO(void *dir, void *dentry, int name_len, const char *name,	\
2187 	 unsigned long long dir_blkno, unsigned long long extra),	\
2188 	TP_ARGS(dir, dentry, name_len, name, dir_blkno, extra))
2189 
2190 DEFINE_OCFS2_DENTRY_OPS(ocfs2_lookup);
2191 
2192 DEFINE_OCFS2_DENTRY_OPS(ocfs2_mkdir);
2193 
2194 DEFINE_OCFS2_DENTRY_OPS(ocfs2_create);
2195 
2196 DEFINE_OCFS2_DENTRY_OPS(ocfs2_unlink);
2197 
2198 DEFINE_OCFS2_DENTRY_OPS(ocfs2_symlink_create);
2199 
2200 DEFINE_OCFS2_DENTRY_OPS(ocfs2_mv_orphaned_inode_to_new);
2201 
2202 DEFINE_OCFS2_POINTER_EVENT(ocfs2_lookup_ret);
2203 
2204 TRACE_EVENT(ocfs2_mknod,
2205 	TP_PROTO(void *dir, void *dentry, int name_len, const char *name,
2206 		 unsigned long long dir_blkno, unsigned long dev, int mode),
2207 	TP_ARGS(dir, dentry, name_len, name, dir_blkno, dev, mode),
2208 	TP_STRUCT__entry(
2209 		__field(void *, dir)
2210 		__field(void *, dentry)
2211 		__field(int, name_len)
2212 		__string(name, name)
2213 		__field(unsigned long long, dir_blkno)
2214 		__field(unsigned long, dev)
2215 		__field(int, mode)
2216 	),
2217 	TP_fast_assign(
2218 		__entry->dir = dir;
2219 		__entry->dentry = dentry;
2220 		__entry->name_len = name_len;
2221 		__assign_str(name, name);
2222 		__entry->dir_blkno = dir_blkno;
2223 		__entry->dev = dev;
2224 		__entry->mode = mode;
2225 	),
2226 	TP_printk("%p %p %.*s %llu %lu %d", __entry->dir, __entry->dentry,
2227 		  __entry->name_len, __get_str(name),
2228 		  __entry->dir_blkno, __entry->dev, __entry->mode)
2229 );
2230 
2231 TRACE_EVENT(ocfs2_link,
2232 	TP_PROTO(unsigned long long ino, int old_len, const char *old_name,
2233 		 int name_len, const char *name),
2234 	TP_ARGS(ino, old_len, old_name, name_len, name),
2235 	TP_STRUCT__entry(
2236 		__field(unsigned long long, ino)
2237 		__field(int, old_len)
2238 		__string(old_name, old_name)
2239 		__field(int, name_len)
2240 		__string(name, name)
2241 	),
2242 	TP_fast_assign(
2243 		__entry->ino = ino;
2244 		__entry->old_len = old_len;
2245 		__assign_str(old_name, old_name);
2246 		__entry->name_len = name_len;
2247 		__assign_str(name, name);
2248 	),
2249 	TP_printk("%llu %.*s %.*s", __entry->ino,
2250 		  __entry->old_len, __get_str(old_name),
2251 		  __entry->name_len, __get_str(name))
2252 );
2253 
2254 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_unlink_noent);
2255 
2256 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_double_lock);
2257 
2258 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_double_lock_end);
2259 
2260 TRACE_EVENT(ocfs2_rename,
2261 	TP_PROTO(void *old_dir, void *old_dentry,
2262 		 void *new_dir, void *new_dentry,
2263 		 int old_len, const char *old_name,
2264 		 int new_len, const char *new_name),
2265 	TP_ARGS(old_dir, old_dentry, new_dir, new_dentry,
2266 		old_len, old_name, new_len, new_name),
2267 	TP_STRUCT__entry(
2268 		__field(void *, old_dir)
2269 		__field(void *, old_dentry)
2270 		__field(void *, new_dir)
2271 		__field(void *, new_dentry)
2272 		__field(int, old_len)
2273 		__string(old_name, old_name)
2274 		__field(int, new_len)
2275 		__string(new_name, new_name)
2276 	),
2277 	TP_fast_assign(
2278 		__entry->old_dir = old_dir;
2279 		__entry->old_dentry = old_dentry;
2280 		__entry->new_dir = new_dir;
2281 		__entry->new_dentry = new_dentry;
2282 		__entry->old_len = old_len;
2283 		__assign_str(old_name, old_name);
2284 		__entry->new_len = new_len;
2285 		__assign_str(new_name, new_name);
2286 	),
2287 	TP_printk("%p %p %p %p %.*s %.*s",
2288 		  __entry->old_dir, __entry->old_dentry,
2289 		  __entry->new_dir, __entry->new_dentry,
2290 		  __entry->old_len, __get_str(old_name),
2291 		  __entry->new_len, __get_str(new_name))
2292 );
2293 
2294 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_rename_not_permitted);
2295 
2296 TRACE_EVENT(ocfs2_rename_target_exists,
2297 	TP_PROTO(int new_len, const char *new_name),
2298 	TP_ARGS(new_len, new_name),
2299 	TP_STRUCT__entry(
2300 		__field(int, new_len)
2301 		__string(new_name, new_name)
2302 	),
2303 	TP_fast_assign(
2304 		__entry->new_len = new_len;
2305 		__assign_str(new_name, new_name);
2306 	),
2307 	TP_printk("%.*s", __entry->new_len, __get_str(new_name))
2308 );
2309 
2310 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_rename_disagree);
2311 
2312 TRACE_EVENT(ocfs2_rename_over_existing,
2313 	TP_PROTO(unsigned long long new_blkno, void *new_bh,
2314 		 unsigned long long newdi_blkno),
2315 	TP_ARGS(new_blkno, new_bh, newdi_blkno),
2316 	TP_STRUCT__entry(
2317 		__field(unsigned long long, new_blkno)
2318 		__field(void *, new_bh)
2319 		__field(unsigned long long, newdi_blkno)
2320 	),
2321 	TP_fast_assign(
2322 		__entry->new_blkno = new_blkno;
2323 		__entry->new_bh = new_bh;
2324 		__entry->newdi_blkno = newdi_blkno;
2325 	),
2326 	TP_printk("%llu %p %llu", __entry->new_blkno, __entry->new_bh,
2327 		  __entry->newdi_blkno)
2328 );
2329 
2330 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_create_symlink_data);
2331 
2332 TRACE_EVENT(ocfs2_symlink_begin,
2333 	TP_PROTO(void *dir, void *dentry, const char *symname,
2334 		 int len, const char *name),
2335 	TP_ARGS(dir, dentry, symname, len, name),
2336 	TP_STRUCT__entry(
2337 		__field(void *, dir)
2338 		__field(void *, dentry)
2339 		__field(const char *, symname)
2340 		__field(int, len)
2341 		__string(name, name)
2342 	),
2343 	TP_fast_assign(
2344 		__entry->dir = dir;
2345 		__entry->dentry = dentry;
2346 		__entry->symname = symname;
2347 		__entry->len = len;
2348 		__assign_str(name, name);
2349 	),
2350 	TP_printk("%p %p %s %.*s", __entry->dir, __entry->dentry,
2351 		  __entry->symname, __entry->len, __get_str(name))
2352 );
2353 
2354 TRACE_EVENT(ocfs2_blkno_stringify,
2355 	TP_PROTO(unsigned long long blkno, const char *name, int namelen),
2356 	TP_ARGS(blkno, name, namelen),
2357 	TP_STRUCT__entry(
2358 		__field(unsigned long long, blkno)
2359 		__string(name, name)
2360 		__field(int, namelen)
2361 	),
2362 	TP_fast_assign(
2363 		__entry->blkno = blkno;
2364 		__assign_str(name, name);
2365 		__entry->namelen = namelen;
2366 	),
2367 	TP_printk("%llu %s %d", __entry->blkno, __get_str(name),
2368 		  __entry->namelen)
2369 );
2370 
2371 DEFINE_OCFS2_ULL_EVENT(ocfs2_orphan_add_begin);
2372 
2373 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_orphan_add_end);
2374 
2375 TRACE_EVENT(ocfs2_orphan_del,
2376 	TP_PROTO(unsigned long long dir, const char *name, int namelen),
2377 	TP_ARGS(dir, name, namelen),
2378 	TP_STRUCT__entry(
2379 		__field(unsigned long long, dir)
2380 		__string(name, name)
2381 		__field(int, namelen)
2382 	),
2383 	TP_fast_assign(
2384 		__entry->dir = dir;
2385 		__assign_str(name, name);
2386 		__entry->namelen = namelen;
2387 	),
2388 	TP_printk("%llu %s %d", __entry->dir, __get_str(name),
2389 		  __entry->namelen)
2390 );
2391 
2392 /* End of trace events for fs/ocfs2/namei.c. */
2393 
2394 /* Trace events for fs/ocfs2/dcache.c. */
2395 
2396 TRACE_EVENT(ocfs2_dentry_revalidate,
2397 	TP_PROTO(void *dentry, int len, const char *name),
2398 	TP_ARGS(dentry, len, name),
2399 	TP_STRUCT__entry(
2400 		__field(void *, dentry)
2401 		__field(int, len)
2402 		__string(name, name)
2403 	),
2404 	TP_fast_assign(
2405 		__entry->dentry = dentry;
2406 		__entry->len = len;
2407 		__assign_str(name, name);
2408 	),
2409 	TP_printk("%p %.*s", __entry->dentry, __entry->len, __get_str(name))
2410 );
2411 
2412 TRACE_EVENT(ocfs2_dentry_revalidate_negative,
2413 	TP_PROTO(int len, const char *name, unsigned long pgen,
2414 		 unsigned long gen),
2415 	TP_ARGS(len, name, pgen, gen),
2416 	TP_STRUCT__entry(
2417 		__field(int, len)
2418 		__string(name, name)
2419 		__field(unsigned long, pgen)
2420 		__field(unsigned long, gen)
2421 	),
2422 	TP_fast_assign(
2423 		__entry->len = len;
2424 		__assign_str(name, name);
2425 		__entry->pgen = pgen;
2426 		__entry->gen = gen;
2427 	),
2428 	TP_printk("%.*s %lu %lu", __entry->len, __get_str(name),
2429 		  __entry->pgen, __entry->gen)
2430 );
2431 
2432 DEFINE_OCFS2_ULL_EVENT(ocfs2_dentry_revalidate_delete);
2433 
2434 DEFINE_OCFS2_ULL_INT_EVENT(ocfs2_dentry_revalidate_orphaned);
2435 
2436 DEFINE_OCFS2_ULL_EVENT(ocfs2_dentry_revalidate_nofsdata);
2437 
2438 DEFINE_OCFS2_INT_EVENT(ocfs2_dentry_revalidate_ret);
2439 
2440 TRACE_EVENT(ocfs2_find_local_alias,
2441 	TP_PROTO(int len, const char *name),
2442 	TP_ARGS(len, name),
2443 	TP_STRUCT__entry(
2444 		__field(int, len)
2445 		__string(name, name)
2446 	),
2447 	TP_fast_assign(
2448 		__entry->len = len;
2449 		__assign_str(name, name);
2450 	),
2451 	TP_printk("%.*s", __entry->len, __get_str(name))
2452 );
2453 
2454 TRACE_EVENT(ocfs2_dentry_attach_lock,
2455 	TP_PROTO(int len, const char *name,
2456 		 unsigned long long parent, void *fsdata),
2457 	TP_ARGS(len, name, parent, fsdata),
2458 	TP_STRUCT__entry(
2459 		__field(int, len)
2460 		__string(name, name)
2461 		__field(unsigned long long, parent)
2462 		__field(void *, fsdata)
2463 	),
2464 	TP_fast_assign(
2465 		__entry->len = len;
2466 		__assign_str(name, name);
2467 		__entry->parent = parent;
2468 		__entry->fsdata = fsdata;
2469 	),
2470 	TP_printk("%.*s %llu %p", __entry->len, __get_str(name),
2471 		  __entry->parent, __entry->fsdata)
2472 );
2473 
2474 TRACE_EVENT(ocfs2_dentry_attach_lock_found,
2475 	TP_PROTO(const char *name, unsigned long long parent,
2476 		 unsigned long long ino),
2477 	TP_ARGS(name, parent, ino),
2478 	TP_STRUCT__entry(
2479 		__string(name, name)
2480 		__field(unsigned long long, parent)
2481 		__field(unsigned long long, ino)
2482 	),
2483 	TP_fast_assign(
2484 		__assign_str(name, name);
2485 		__entry->parent = parent;
2486 		__entry->ino = ino;
2487 	),
2488 	TP_printk("%s %llu %llu", __get_str(name), __entry->parent, __entry->ino)
2489 );
2490 /* End of trace events for fs/ocfs2/dcache.c. */
2491 
2492 /* Trace events for fs/ocfs2/export.c. */
2493 
2494 TRACE_EVENT(ocfs2_get_dentry_begin,
2495 	TP_PROTO(void *sb, void *handle, unsigned long long blkno),
2496 	TP_ARGS(sb, handle, blkno),
2497 	TP_STRUCT__entry(
2498 		__field(void *, sb)
2499 		__field(void *, handle)
2500 		__field(unsigned long long, blkno)
2501 	),
2502 	TP_fast_assign(
2503 		__entry->sb = sb;
2504 		__entry->handle = handle;
2505 		__entry->blkno = blkno;
2506 	),
2507 	TP_printk("%p %p %llu", __entry->sb, __entry->handle, __entry->blkno)
2508 );
2509 
2510 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_get_dentry_test_bit);
2511 
2512 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_get_dentry_stale);
2513 
2514 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_get_dentry_generation);
2515 
2516 DEFINE_OCFS2_POINTER_EVENT(ocfs2_get_dentry_end);
2517 
2518 TRACE_EVENT(ocfs2_get_parent,
2519 	TP_PROTO(void *child, int len, const char *name,
2520 		 unsigned long long ino),
2521 	TP_ARGS(child, len, name, ino),
2522 	TP_STRUCT__entry(
2523 		__field(void *,	child)
2524 		__field(int, len)
2525 		__string(name, name)
2526 		__field(unsigned long long, ino)
2527 	),
2528 	TP_fast_assign(
2529 		__entry->child = child;
2530 		__entry->len = len;
2531 		__assign_str(name, name);
2532 		__entry->ino = ino;
2533 	),
2534 	TP_printk("%p %.*s %llu", __entry->child, __entry->len,
2535 		  __get_str(name), __entry->ino)
2536 );
2537 
2538 DEFINE_OCFS2_POINTER_EVENT(ocfs2_get_parent_end);
2539 
2540 TRACE_EVENT(ocfs2_encode_fh_begin,
2541 	TP_PROTO(void *dentry, int name_len, const char *name,
2542 		 void *fh, int len, int connectable),
2543 	TP_ARGS(dentry, name_len, name, fh, len, connectable),
2544 	TP_STRUCT__entry(
2545 		__field(void *, dentry)
2546 		__field(int, name_len)
2547 		__string(name, name)
2548 		__field(void *, fh)
2549 		__field(int, len)
2550 		__field(int, connectable)
2551 	),
2552 	TP_fast_assign(
2553 		__entry->dentry = dentry;
2554 		__entry->name_len = name_len;
2555 		__assign_str(name, name);
2556 		__entry->fh = fh;
2557 		__entry->len = len;
2558 		__entry->connectable = connectable;
2559 	),
2560 	TP_printk("%p %.*s %p %d %d", __entry->dentry, __entry->name_len,
2561 		  __get_str(name), __entry->fh, __entry->len,
2562 		  __entry->connectable)
2563 );
2564 
2565 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_encode_fh_self);
2566 
2567 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_encode_fh_parent);
2568 
2569 DEFINE_OCFS2_INT_EVENT(ocfs2_encode_fh_type);
2570 
2571 /* End of trace events for fs/ocfs2/export.c. */
2572 
2573 /* Trace events for fs/ocfs2/journal.c. */
2574 
2575 DEFINE_OCFS2_UINT_EVENT(ocfs2_commit_cache_begin);
2576 
2577 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_commit_cache_end);
2578 
2579 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_extend_trans);
2580 
2581 DEFINE_OCFS2_INT_EVENT(ocfs2_extend_trans_restart);
2582 
2583 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_allocate_extend_trans);
2584 
2585 DEFINE_OCFS2_ULL_ULL_UINT_UINT_EVENT(ocfs2_journal_access);
2586 
2587 DEFINE_OCFS2_ULL_EVENT(ocfs2_journal_dirty);
2588 
2589 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_journal_init);
2590 
2591 DEFINE_OCFS2_UINT_EVENT(ocfs2_journal_init_maxlen);
2592 
2593 DEFINE_OCFS2_INT_EVENT(ocfs2_journal_shutdown);
2594 
2595 DEFINE_OCFS2_POINTER_EVENT(ocfs2_journal_shutdown_wait);
2596 
2597 DEFINE_OCFS2_ULL_EVENT(ocfs2_complete_recovery);
2598 
2599 DEFINE_OCFS2_INT_EVENT(ocfs2_complete_recovery_end);
2600 
2601 TRACE_EVENT(ocfs2_complete_recovery_slot,
2602 	TP_PROTO(int slot, unsigned long long la_ino,
2603 		 unsigned long long tl_ino, void *qrec),
2604 	TP_ARGS(slot, la_ino, tl_ino, qrec),
2605 	TP_STRUCT__entry(
2606 		__field(int, slot)
2607 		__field(unsigned long long, la_ino)
2608 		__field(unsigned long long, tl_ino)
2609 		__field(void *, qrec)
2610 	),
2611 	TP_fast_assign(
2612 		__entry->slot = slot;
2613 		__entry->la_ino = la_ino;
2614 		__entry->tl_ino = tl_ino;
2615 		__entry->qrec = qrec;
2616 	),
2617 	TP_printk("%d %llu %llu %p", __entry->slot, __entry->la_ino,
2618 		  __entry->tl_ino, __entry->qrec)
2619 );
2620 
2621 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_recovery_thread_node);
2622 
2623 DEFINE_OCFS2_INT_EVENT(ocfs2_recovery_thread_end);
2624 
2625 TRACE_EVENT(ocfs2_recovery_thread,
2626 	TP_PROTO(int node_num, int osb_node_num, int disable,
2627 		 void *recovery_thread, int map_set),
2628 	TP_ARGS(node_num, osb_node_num, disable, recovery_thread, map_set),
2629 	TP_STRUCT__entry(
2630 		__field(int, node_num)
2631 		__field(int, osb_node_num)
2632 		__field(int,disable)
2633 		__field(void *, recovery_thread)
2634 		__field(int,map_set)
2635 	),
2636 	TP_fast_assign(
2637 		__entry->node_num = node_num;
2638 		__entry->osb_node_num = osb_node_num;
2639 		__entry->disable = disable;
2640 		__entry->recovery_thread = recovery_thread;
2641 		__entry->map_set = map_set;
2642 	),
2643 	TP_printk("%d %d %d %p %d", __entry->node_num,
2644 		   __entry->osb_node_num, __entry->disable,
2645 		   __entry->recovery_thread, __entry->map_set)
2646 );
2647 
2648 DEFINE_OCFS2_UINT_UINT_UINT_EVENT(ocfs2_replay_journal_recovered);
2649 
2650 DEFINE_OCFS2_INT_EVENT(ocfs2_replay_journal_lock_err);
2651 
2652 DEFINE_OCFS2_INT_EVENT(ocfs2_replay_journal_skip);
2653 
2654 DEFINE_OCFS2_UINT_UINT_UINT_EVENT(ocfs2_recover_node);
2655 
2656 DEFINE_OCFS2_UINT_UINT_EVENT(ocfs2_recover_node_skip);
2657 
2658 DEFINE_OCFS2_UINT_UINT_EVENT(ocfs2_mark_dead_nodes);
2659 
2660 DEFINE_OCFS2_UINT_UINT_UINT_EVENT(ocfs2_queue_orphan_scan_begin);
2661 
2662 DEFINE_OCFS2_UINT_UINT_UINT_EVENT(ocfs2_queue_orphan_scan_end);
2663 
2664 DEFINE_OCFS2_ULL_EVENT(ocfs2_orphan_filldir);
2665 
2666 DEFINE_OCFS2_INT_EVENT(ocfs2_recover_orphans);
2667 
2668 DEFINE_OCFS2_ULL_EVENT(ocfs2_recover_orphans_iput);
2669 
2670 DEFINE_OCFS2_INT_EVENT(ocfs2_wait_on_mount);
2671 
2672 /* End of trace events for fs/ocfs2/journal.c. */
2673 
2674 /* Trace events for fs/ocfs2/buffer_head_io.c. */
2675 
2676 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_read_blocks_sync);
2677 
2678 DEFINE_OCFS2_ULL_EVENT(ocfs2_read_blocks_sync_jbd);
2679 
2680 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_read_blocks_from_disk);
2681 
2682 DEFINE_OCFS2_ULL_INT_INT_INT_EVENT(ocfs2_read_blocks_bh);
2683 
2684 DEFINE_OCFS2_ULL_INT_INT_INT_EVENT(ocfs2_read_blocks_end);
2685 
2686 TRACE_EVENT(ocfs2_write_block,
2687 	TP_PROTO(unsigned long long block, void *ci),
2688 	TP_ARGS(block, ci),
2689 	TP_STRUCT__entry(
2690 		__field(unsigned long long, block)
2691 		__field(void *, ci)
2692 	),
2693 	TP_fast_assign(
2694 		__entry->block = block;
2695 		__entry->ci = ci;
2696 	),
2697 	TP_printk("%llu %p", __entry->block, __entry->ci)
2698 );
2699 
2700 TRACE_EVENT(ocfs2_read_blocks_begin,
2701 	TP_PROTO(void *ci, unsigned long long block,
2702 		 unsigned int nr, int flags),
2703 	TP_ARGS(ci, block, nr, flags),
2704 	TP_STRUCT__entry(
2705 		__field(void *, ci)
2706 		__field(unsigned long long, block)
2707 		__field(unsigned int, nr)
2708 		__field(int, flags)
2709 	),
2710 	TP_fast_assign(
2711 		__entry->ci = ci;
2712 		__entry->block = block;
2713 		__entry->nr = nr;
2714 		__entry->flags = flags;
2715 	),
2716 	TP_printk("%p %llu %u %d", __entry->ci, __entry->block,
2717 		  __entry->nr, __entry->flags)
2718 );
2719 
2720 /* End of trace events for fs/ocfs2/buffer_head_io.c. */
2721 
2722 /* Trace events for fs/ocfs2/uptodate.c. */
2723 
2724 DEFINE_OCFS2_ULL_EVENT(ocfs2_purge_copied_metadata_tree);
2725 
2726 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_metadata_cache_purge);
2727 
2728 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_buffer_cached_begin);
2729 
2730 TRACE_EVENT(ocfs2_buffer_cached_end,
2731 	TP_PROTO(int index, void *item),
2732 	TP_ARGS(index, item),
2733 	TP_STRUCT__entry(
2734 		__field(int, index)
2735 		__field(void *, item)
2736 	),
2737 	TP_fast_assign(
2738 		__entry->index = index;
2739 		__entry->item = item;
2740 	),
2741 	TP_printk("%d %p", __entry->index, __entry->item)
2742 );
2743 
2744 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_append_cache_array);
2745 
2746 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_insert_cache_tree);
2747 
2748 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_expand_cache);
2749 
2750 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_set_buffer_uptodate);
2751 
2752 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_set_buffer_uptodate_begin);
2753 
2754 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_remove_metadata_array);
2755 
2756 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_remove_metadata_tree);
2757 
2758 DEFINE_OCFS2_ULL_ULL_UINT_UINT_EVENT(ocfs2_remove_block_from_cache);
2759 
2760 /* End of trace events for fs/ocfs2/uptodate.c. */
2761 #endif /* _TRACE_OCFS2_H */
2762 
2763 /* This part must be outside protection */
2764 #undef TRACE_INCLUDE_PATH
2765 #define TRACE_INCLUDE_PATH .
2766 #define TRACE_INCLUDE_FILE ocfs2_trace
2767 #include <trace/define_trace.h>
2768