xref: /linux/fs/ocfs2/ocfs2_trace.h (revision f77d1a49902bc70625e3d101a16d8a687f7e97db)
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_read_iter);
1319 
1320 DEFINE_OCFS2_FILE_OPS(ocfs2_file_splice_read);
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 DEFINE_OCFS2_INT_EVENT(filemap_splice_read_ret);
1474 
1475 /* End of trace events for fs/ocfs2/file.c. */
1476 
1477 /* Trace events for fs/ocfs2/inode.c. */
1478 
1479 TRACE_EVENT(ocfs2_iget_begin,
1480 	TP_PROTO(unsigned long long ino, unsigned int flags, int sysfile_type),
1481 	TP_ARGS(ino, flags, sysfile_type),
1482 	TP_STRUCT__entry(
1483 		__field(unsigned long long, ino)
1484 		__field(unsigned int, flags)
1485 		__field(int, sysfile_type)
1486 	),
1487 	TP_fast_assign(
1488 		__entry->ino = ino;
1489 		__entry->flags = flags;
1490 		__entry->sysfile_type = sysfile_type;
1491 	),
1492 	TP_printk("%llu %u %d", __entry->ino,
1493 		  __entry->flags, __entry->sysfile_type)
1494 );
1495 
1496 DEFINE_OCFS2_ULL_EVENT(ocfs2_iget5_locked);
1497 
1498 TRACE_EVENT(ocfs2_iget_end,
1499 	TP_PROTO(void *inode, unsigned long long ino),
1500 	TP_ARGS(inode, ino),
1501 	TP_STRUCT__entry(
1502 		__field(void *, inode)
1503 		__field(unsigned long long, ino)
1504 	),
1505 	TP_fast_assign(
1506 		__entry->inode = inode;
1507 		__entry->ino = ino;
1508 	),
1509 	TP_printk("%p %llu", __entry->inode, __entry->ino)
1510 );
1511 
1512 TRACE_EVENT(ocfs2_find_actor,
1513 	TP_PROTO(void *inode, unsigned long long ino,
1514 		 void *args,  unsigned long long fi_blkno),
1515 	TP_ARGS(inode, ino, args, fi_blkno),
1516 	TP_STRUCT__entry(
1517 		__field(void *, inode)
1518 		__field(unsigned long long, ino)
1519 		__field(void *, args)
1520 		__field(unsigned long long, fi_blkno)
1521 	),
1522 	TP_fast_assign(
1523 		__entry->inode = inode;
1524 		__entry->ino = ino;
1525 		__entry->args = args;
1526 		__entry->fi_blkno = fi_blkno;
1527 	),
1528 	TP_printk("%p %llu %p %llu", __entry->inode, __entry->ino,
1529 		  __entry->args, __entry->fi_blkno)
1530 );
1531 
1532 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_populate_inode);
1533 
1534 DEFINE_OCFS2_ULL_INT_EVENT(ocfs2_read_locked_inode);
1535 
1536 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_check_orphan_recovery_state);
1537 
1538 DEFINE_OCFS2_ULL_EVENT(ocfs2_validate_inode_block);
1539 DEFINE_OCFS2_ULL_EVENT(ocfs2_filecheck_validate_inode_block);
1540 DEFINE_OCFS2_ULL_EVENT(ocfs2_filecheck_repair_inode_block);
1541 
1542 TRACE_EVENT(ocfs2_inode_is_valid_to_delete,
1543 	TP_PROTO(void *task, void *dc_task, unsigned long long ino,
1544 		 unsigned int flags),
1545 	TP_ARGS(task, dc_task, ino, flags),
1546 	TP_STRUCT__entry(
1547 		__field(void *, task)
1548 		__field(void *, dc_task)
1549 		__field(unsigned long long, ino)
1550 		__field(unsigned int, flags)
1551 	),
1552 	TP_fast_assign(
1553 		__entry->task = task;
1554 		__entry->dc_task = dc_task;
1555 		__entry->ino = ino;
1556 		__entry->flags = flags;
1557 	),
1558 	TP_printk("%p %p %llu %u", __entry->task, __entry->dc_task,
1559 		  __entry->ino, __entry->flags)
1560 );
1561 
1562 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_query_inode_wipe_begin);
1563 
1564 DEFINE_OCFS2_UINT_EVENT(ocfs2_query_inode_wipe_succ);
1565 
1566 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_query_inode_wipe_end);
1567 
1568 DEFINE_OCFS2_ULL_INT_EVENT(ocfs2_cleanup_delete_inode);
1569 
1570 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_delete_inode);
1571 
1572 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_clear_inode);
1573 
1574 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_drop_inode);
1575 
1576 TRACE_EVENT(ocfs2_inode_revalidate,
1577 	TP_PROTO(void *inode, unsigned long long ino,
1578 		 unsigned int flags),
1579 	TP_ARGS(inode, ino, flags),
1580 	TP_STRUCT__entry(
1581 		__field(void *, inode)
1582 		__field(unsigned long long, ino)
1583 		__field(unsigned int, flags)
1584 	),
1585 	TP_fast_assign(
1586 		__entry->inode = inode;
1587 		__entry->ino = ino;
1588 		__entry->flags = flags;
1589 	),
1590 	TP_printk("%p %llu %u", __entry->inode, __entry->ino, __entry->flags)
1591 );
1592 
1593 DEFINE_OCFS2_ULL_EVENT(ocfs2_mark_inode_dirty);
1594 
1595 /* End of trace events for fs/ocfs2/inode.c. */
1596 
1597 /* Trace events for fs/ocfs2/extent_map.c. */
1598 
1599 TRACE_EVENT(ocfs2_read_virt_blocks,
1600 	TP_PROTO(void *inode, unsigned long long vblock, int nr,
1601 		 void *bhs, unsigned int flags, void *validate),
1602 	TP_ARGS(inode, vblock, nr, bhs, flags, validate),
1603 	TP_STRUCT__entry(
1604 		__field(void *, inode)
1605 		__field(unsigned long long, vblock)
1606 		__field(int, nr)
1607 		__field(void *, bhs)
1608 		__field(unsigned int, flags)
1609 		__field(void *, validate)
1610 	),
1611 	TP_fast_assign(
1612 		__entry->inode = inode;
1613 		__entry->vblock = vblock;
1614 		__entry->nr = nr;
1615 		__entry->bhs = bhs;
1616 		__entry->flags = flags;
1617 		__entry->validate = validate;
1618 	),
1619 	TP_printk("%p %llu %d %p %x %p", __entry->inode, __entry->vblock,
1620 		  __entry->nr, __entry->bhs, __entry->flags, __entry->validate)
1621 );
1622 
1623 /* End of trace events for fs/ocfs2/extent_map.c. */
1624 
1625 /* Trace events for fs/ocfs2/slot_map.c. */
1626 
1627 DEFINE_OCFS2_UINT_EVENT(ocfs2_refresh_slot_info);
1628 
1629 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_map_slot_buffers);
1630 
1631 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_map_slot_buffers_block);
1632 
1633 DEFINE_OCFS2_INT_EVENT(ocfs2_find_slot);
1634 
1635 /* End of trace events for fs/ocfs2/slot_map.c. */
1636 
1637 /* Trace events for fs/ocfs2/heartbeat.c. */
1638 
1639 DEFINE_OCFS2_INT_EVENT(ocfs2_do_node_down);
1640 
1641 /* End of trace events for fs/ocfs2/heartbeat.c. */
1642 
1643 /* Trace events for fs/ocfs2/super.c. */
1644 
1645 TRACE_EVENT(ocfs2_remount,
1646 	TP_PROTO(unsigned long s_flags, unsigned long osb_flags, int flags),
1647 	TP_ARGS(s_flags, osb_flags, flags),
1648 	TP_STRUCT__entry(
1649 		__field(unsigned long, s_flags)
1650 		__field(unsigned long, osb_flags)
1651 		__field(int, flags)
1652 	),
1653 	TP_fast_assign(
1654 		__entry->s_flags = s_flags;
1655 		__entry->osb_flags = osb_flags;
1656 		__entry->flags = flags;
1657 	),
1658 	TP_printk("%lu %lu %d", __entry->s_flags,
1659 		  __entry->osb_flags, __entry->flags)
1660 );
1661 
1662 TRACE_EVENT(ocfs2_fill_super,
1663 	TP_PROTO(void *sb, void *data, int silent),
1664 	TP_ARGS(sb, data, silent),
1665 	TP_STRUCT__entry(
1666 		__field(void *, sb)
1667 		__field(void *, data)
1668 		__field(int, silent)
1669 	),
1670 	TP_fast_assign(
1671 		__entry->sb = sb;
1672 		__entry->data = data;
1673 		__entry->silent = silent;
1674 	),
1675 	TP_printk("%p %p %d", __entry->sb,
1676 		  __entry->data, __entry->silent)
1677 );
1678 
1679 TRACE_EVENT(ocfs2_parse_options,
1680 	TP_PROTO(int is_remount, char *options),
1681 	TP_ARGS(is_remount, options),
1682 	TP_STRUCT__entry(
1683 		__field(int, is_remount)
1684 		__string(options, options)
1685 	),
1686 	TP_fast_assign(
1687 		__entry->is_remount = is_remount;
1688 		__assign_str(options, options);
1689 	),
1690 	TP_printk("%d %s", __entry->is_remount, __get_str(options))
1691 );
1692 
1693 DEFINE_OCFS2_POINTER_EVENT(ocfs2_put_super);
1694 
1695 TRACE_EVENT(ocfs2_statfs,
1696 	TP_PROTO(void *sb, void *buf),
1697 	TP_ARGS(sb, buf),
1698 	TP_STRUCT__entry(
1699 		__field(void *, sb)
1700 		__field(void *, buf)
1701 	),
1702 	TP_fast_assign(
1703 		__entry->sb = sb;
1704 		__entry->buf = buf;
1705 	),
1706 	TP_printk("%p %p", __entry->sb, __entry->buf)
1707 );
1708 
1709 DEFINE_OCFS2_POINTER_EVENT(ocfs2_dismount_volume);
1710 
1711 TRACE_EVENT(ocfs2_initialize_super,
1712 	TP_PROTO(char *label, char *uuid_str, unsigned long long root_dir,
1713 		 unsigned long long system_dir, int cluster_bits),
1714 	TP_ARGS(label, uuid_str, root_dir, system_dir, cluster_bits),
1715 	TP_STRUCT__entry(
1716 		__string(label, label)
1717 		__string(uuid_str, uuid_str)
1718 		__field(unsigned long long, root_dir)
1719 		__field(unsigned long long, system_dir)
1720 		__field(int, cluster_bits)
1721 	),
1722 	TP_fast_assign(
1723 		__assign_str(label, label);
1724 		__assign_str(uuid_str, uuid_str);
1725 		__entry->root_dir = root_dir;
1726 		__entry->system_dir = system_dir;
1727 		__entry->cluster_bits = cluster_bits;
1728 	),
1729 	TP_printk("%s %s %llu %llu %d", __get_str(label), __get_str(uuid_str),
1730 		  __entry->root_dir, __entry->system_dir, __entry->cluster_bits)
1731 );
1732 
1733 /* End of trace events for fs/ocfs2/super.c. */
1734 
1735 /* Trace events for fs/ocfs2/xattr.c. */
1736 
1737 DEFINE_OCFS2_ULL_EVENT(ocfs2_validate_xattr_block);
1738 
1739 DEFINE_OCFS2_UINT_EVENT(ocfs2_xattr_extend_allocation);
1740 
1741 TRACE_EVENT(ocfs2_init_xattr_set_ctxt,
1742 	TP_PROTO(const char *name, int meta, int clusters, int credits),
1743 	TP_ARGS(name, meta, clusters, credits),
1744 	TP_STRUCT__entry(
1745 		__string(name, name)
1746 		__field(int, meta)
1747 		__field(int, clusters)
1748 		__field(int, credits)
1749 	),
1750 	TP_fast_assign(
1751 		__assign_str(name, name);
1752 		__entry->meta = meta;
1753 		__entry->clusters = clusters;
1754 		__entry->credits = credits;
1755 	),
1756 	TP_printk("%s %d %d %d", __get_str(name), __entry->meta,
1757 		  __entry->clusters, __entry->credits)
1758 );
1759 
1760 DECLARE_EVENT_CLASS(ocfs2__xattr_find,
1761 	TP_PROTO(unsigned long long ino, const char *name, int name_index,
1762 		 unsigned int hash, unsigned long long location,
1763 		 int xe_index),
1764 	TP_ARGS(ino, name, name_index, hash, location, xe_index),
1765 	TP_STRUCT__entry(
1766 		__field(unsigned long long, ino)
1767 		__string(name, name)
1768 		__field(int, name_index)
1769 		__field(unsigned int, hash)
1770 		__field(unsigned long long, location)
1771 		__field(int, xe_index)
1772 	),
1773 	TP_fast_assign(
1774 		__entry->ino = ino;
1775 		__assign_str(name, name);
1776 		__entry->name_index = name_index;
1777 		__entry->hash = hash;
1778 		__entry->location = location;
1779 		__entry->xe_index = xe_index;
1780 	),
1781 	TP_printk("%llu %s %d %u %llu %d", __entry->ino, __get_str(name),
1782 		  __entry->name_index, __entry->hash, __entry->location,
1783 		  __entry->xe_index)
1784 );
1785 
1786 #define DEFINE_OCFS2_XATTR_FIND_EVENT(name)					\
1787 DEFINE_EVENT(ocfs2__xattr_find, name,					\
1788 TP_PROTO(unsigned long long ino, const char *name, int name_index,	\
1789 	 unsigned int hash, unsigned long long bucket,			\
1790 	 int xe_index),							\
1791 	TP_ARGS(ino, name, name_index, hash, bucket, xe_index))
1792 
1793 DEFINE_OCFS2_XATTR_FIND_EVENT(ocfs2_xattr_bucket_find);
1794 
1795 DEFINE_OCFS2_XATTR_FIND_EVENT(ocfs2_xattr_index_block_find);
1796 
1797 DEFINE_OCFS2_XATTR_FIND_EVENT(ocfs2_xattr_index_block_find_rec);
1798 
1799 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_iterate_xattr_buckets);
1800 
1801 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_iterate_xattr_bucket);
1802 
1803 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_cp_xattr_block_to_bucket_begin);
1804 
1805 DEFINE_OCFS2_UINT_UINT_UINT_EVENT(ocfs2_cp_xattr_block_to_bucket_end);
1806 
1807 DEFINE_OCFS2_ULL_EVENT(ocfs2_xattr_create_index_block_begin);
1808 
1809 DEFINE_OCFS2_ULL_EVENT(ocfs2_xattr_create_index_block);
1810 
1811 DEFINE_OCFS2_ULL_UINT_UINT_UINT_EVENT(ocfs2_defrag_xattr_bucket);
1812 
1813 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_mv_xattr_bucket_cross_cluster);
1814 
1815 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_divide_xattr_bucket_begin);
1816 
1817 DEFINE_OCFS2_UINT_UINT_UINT_EVENT(ocfs2_divide_xattr_bucket_move);
1818 
1819 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_cp_xattr_bucket);
1820 
1821 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_mv_xattr_buckets);
1822 
1823 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_adjust_xattr_cross_cluster);
1824 
1825 DEFINE_OCFS2_ULL_ULL_UINT_UINT_EVENT(ocfs2_add_new_xattr_cluster_begin);
1826 
1827 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_add_new_xattr_cluster);
1828 
1829 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_add_new_xattr_cluster_insert);
1830 
1831 DEFINE_OCFS2_ULL_ULL_UINT_UINT_EVENT(ocfs2_extend_xattr_bucket);
1832 
1833 DEFINE_OCFS2_ULL_EVENT(ocfs2_add_new_xattr_bucket);
1834 
1835 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_xattr_bucket_value_truncate);
1836 
1837 DEFINE_OCFS2_ULL_ULL_UINT_UINT_EVENT(ocfs2_rm_xattr_cluster);
1838 
1839 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_reflink_xattr_header);
1840 
1841 DEFINE_OCFS2_ULL_INT_EVENT(ocfs2_create_empty_xattr_block);
1842 
1843 DEFINE_OCFS2_STRING_EVENT(ocfs2_xattr_set_entry_bucket);
1844 
1845 DEFINE_OCFS2_STRING_EVENT(ocfs2_xattr_set_entry_index_block);
1846 
1847 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_xattr_bucket_value_refcount);
1848 
1849 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_reflink_xattr_buckets);
1850 
1851 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_reflink_xattr_rec);
1852 
1853 /* End of trace events for fs/ocfs2/xattr.c. */
1854 
1855 /* Trace events for fs/ocfs2/reservations.c. */
1856 
1857 DEFINE_OCFS2_UINT_UINT_EVENT(ocfs2_resv_insert);
1858 
1859 DEFINE_OCFS2_ULL_UINT_UINT_UINT_EVENT(ocfs2_resmap_find_free_bits_begin);
1860 
1861 DEFINE_OCFS2_UINT_UINT_EVENT(ocfs2_resmap_find_free_bits_end);
1862 
1863 TRACE_EVENT(ocfs2_resv_find_window_begin,
1864 	TP_PROTO(unsigned int r_start, unsigned int r_end, unsigned int goal,
1865 		 unsigned int wanted, int empty_root),
1866 	TP_ARGS(r_start, r_end, goal, wanted, empty_root),
1867 	TP_STRUCT__entry(
1868 		__field(unsigned int, r_start)
1869 		__field(unsigned int, r_end)
1870 		__field(unsigned int, goal)
1871 		__field(unsigned int, wanted)
1872 		__field(int, empty_root)
1873 	),
1874 	TP_fast_assign(
1875 		__entry->r_start = r_start;
1876 		__entry->r_end = r_end;
1877 		__entry->goal = goal;
1878 		__entry->wanted = wanted;
1879 		__entry->empty_root = empty_root;
1880 	),
1881 	TP_printk("%u %u %u %u %d", __entry->r_start, __entry->r_end,
1882 		  __entry->goal, __entry->wanted, __entry->empty_root)
1883 );
1884 
1885 DEFINE_OCFS2_UINT_UINT_EVENT(ocfs2_resv_find_window_prev);
1886 
1887 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_resv_find_window_next);
1888 
1889 DEFINE_OCFS2_UINT_UINT_UINT_EVENT(ocfs2_cannibalize_resv_begin);
1890 
1891 TRACE_EVENT(ocfs2_cannibalize_resv_end,
1892 	TP_PROTO(unsigned int start, unsigned int end, unsigned int len,
1893 		 unsigned int last_start, unsigned int last_len),
1894 	TP_ARGS(start, end, len, last_start, last_len),
1895 	TP_STRUCT__entry(
1896 		__field(unsigned int, start)
1897 		__field(unsigned int, end)
1898 		__field(unsigned int, len)
1899 		__field(unsigned int, last_start)
1900 		__field(unsigned int, last_len)
1901 	),
1902 	TP_fast_assign(
1903 		__entry->start = start;
1904 		__entry->end = end;
1905 		__entry->len = len;
1906 		__entry->last_start = last_start;
1907 		__entry->last_len = last_len;
1908 	),
1909 	TP_printk("%u %u %u %u %u", __entry->start, __entry->end,
1910 		  __entry->len, __entry->last_start, __entry->last_len)
1911 );
1912 
1913 DEFINE_OCFS2_UINT_UINT_EVENT(ocfs2_resmap_resv_bits);
1914 
1915 TRACE_EVENT(ocfs2_resmap_claimed_bits_begin,
1916 	TP_PROTO(unsigned int cstart, unsigned int cend, unsigned int clen,
1917 		 unsigned int r_start, unsigned int r_end, unsigned int r_len,
1918 		 unsigned int last_start, unsigned int last_len),
1919 	TP_ARGS(cstart, cend, clen, r_start, r_end,
1920 		r_len, last_start, last_len),
1921 	TP_STRUCT__entry(
1922 		__field(unsigned int, cstart)
1923 		__field(unsigned int, cend)
1924 		__field(unsigned int, clen)
1925 		__field(unsigned int, r_start)
1926 		__field(unsigned int, r_end)
1927 		__field(unsigned int, r_len)
1928 		__field(unsigned int, last_start)
1929 		__field(unsigned int, last_len)
1930 	),
1931 	TP_fast_assign(
1932 		__entry->cstart = cstart;
1933 		__entry->cend = cend;
1934 		__entry->clen = clen;
1935 		__entry->r_start = r_start;
1936 		__entry->r_end = r_end;
1937 		__entry->r_len = r_len;
1938 		__entry->last_start = last_start;
1939 		__entry->last_len = last_len;
1940 	),
1941 	TP_printk("%u %u %u %u %u %u %u %u",
1942 		  __entry->cstart, __entry->cend, __entry->clen,
1943 		  __entry->r_start, __entry->r_end, __entry->r_len,
1944 		  __entry->last_start, __entry->last_len)
1945 );
1946 
1947 TRACE_EVENT(ocfs2_resmap_claimed_bits_end,
1948 	TP_PROTO(unsigned int start, unsigned int end, unsigned int len,
1949 		 unsigned int last_start, unsigned int last_len),
1950 	TP_ARGS(start, end, len, last_start, last_len),
1951 	TP_STRUCT__entry(
1952 		__field(unsigned int, start)
1953 		__field(unsigned int, end)
1954 		__field(unsigned int, len)
1955 		__field(unsigned int, last_start)
1956 		__field(unsigned int, last_len)
1957 	),
1958 	TP_fast_assign(
1959 		__entry->start = start;
1960 		__entry->end = end;
1961 		__entry->len = len;
1962 		__entry->last_start = last_start;
1963 		__entry->last_len = last_len;
1964 	),
1965 	TP_printk("%u %u %u %u %u", __entry->start, __entry->end,
1966 		  __entry->len, __entry->last_start, __entry->last_len)
1967 );
1968 
1969 /* End of trace events for fs/ocfs2/reservations.c. */
1970 
1971 /* Trace events for fs/ocfs2/quota_local.c. */
1972 
1973 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_recover_local_quota_file);
1974 
1975 DEFINE_OCFS2_INT_EVENT(ocfs2_finish_quota_recovery);
1976 
1977 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(olq_set_dquot);
1978 
1979 /* End of trace events for fs/ocfs2/quota_local.c. */
1980 
1981 /* Trace events for fs/ocfs2/quota_global.c. */
1982 
1983 DEFINE_OCFS2_ULL_EVENT(ocfs2_validate_quota_block);
1984 
1985 TRACE_EVENT(ocfs2_sync_dquot,
1986 	TP_PROTO(unsigned int dq_id, long long dqb_curspace,
1987 		 long long spacechange, long long curinodes,
1988 		 long long inodechange),
1989 	TP_ARGS(dq_id, dqb_curspace, spacechange, curinodes, inodechange),
1990 	TP_STRUCT__entry(
1991 		__field(unsigned int, dq_id)
1992 		__field(long long, dqb_curspace)
1993 		__field(long long, spacechange)
1994 		__field(long long, curinodes)
1995 		__field(long long, inodechange)
1996 	),
1997 	TP_fast_assign(
1998 		__entry->dq_id = dq_id;
1999 		__entry->dqb_curspace = dqb_curspace;
2000 		__entry->spacechange = spacechange;
2001 		__entry->curinodes = curinodes;
2002 		__entry->inodechange = inodechange;
2003 	),
2004 	TP_printk("%u %lld %lld %lld %lld", __entry->dq_id,
2005 		  __entry->dqb_curspace, __entry->spacechange,
2006 		  __entry->curinodes, __entry->inodechange)
2007 );
2008 
2009 TRACE_EVENT(ocfs2_sync_dquot_helper,
2010 	TP_PROTO(unsigned int dq_id, unsigned int dq_type, unsigned long type,
2011 		 const char *s_id),
2012 	TP_ARGS(dq_id, dq_type, type, s_id),
2013 
2014 	TP_STRUCT__entry(
2015 		__field(unsigned int, dq_id)
2016 		__field(unsigned int, dq_type)
2017 		__field(unsigned long, type)
2018 		__string(s_id, s_id)
2019 	),
2020 	TP_fast_assign(
2021 		__entry->dq_id = dq_id;
2022 		__entry->dq_type = dq_type;
2023 		__entry->type = type;
2024 		__assign_str(s_id, s_id);
2025 	),
2026 	TP_printk("%u %u %lu %s", __entry->dq_id, __entry->dq_type,
2027 		  __entry->type, __get_str(s_id))
2028 );
2029 
2030 DEFINE_OCFS2_UINT_INT_EVENT(ocfs2_write_dquot);
2031 
2032 DEFINE_OCFS2_UINT_INT_EVENT(ocfs2_release_dquot);
2033 
2034 DEFINE_OCFS2_UINT_INT_EVENT(ocfs2_acquire_dquot);
2035 
2036 DEFINE_OCFS2_UINT_INT_EVENT(ocfs2_get_next_id);
2037 
2038 DEFINE_OCFS2_UINT_INT_EVENT(ocfs2_mark_dquot_dirty);
2039 
2040 /* End of trace events for fs/ocfs2/quota_global.c. */
2041 
2042 /* Trace events for fs/ocfs2/dir.c. */
2043 DEFINE_OCFS2_INT_EVENT(ocfs2_search_dirblock);
2044 
2045 DEFINE_OCFS2_ULL_EVENT(ocfs2_validate_dir_block);
2046 
2047 DEFINE_OCFS2_POINTER_EVENT(ocfs2_find_entry_el);
2048 
2049 TRACE_EVENT(ocfs2_dx_dir_search,
2050 	TP_PROTO(unsigned long long ino, int namelen, const char *name,
2051 		 unsigned int major_hash, unsigned int minor_hash,
2052 		 unsigned long long blkno),
2053 	TP_ARGS(ino, namelen, name, major_hash, minor_hash, blkno),
2054 	TP_STRUCT__entry(
2055 		__field(unsigned long long, ino)
2056 		__field(int, namelen)
2057 		__string(name, name)
2058 		__field(unsigned int, major_hash)
2059 		__field(unsigned int,minor_hash)
2060 		__field(unsigned long long, blkno)
2061 	),
2062 	TP_fast_assign(
2063 		__entry->ino = ino;
2064 		__entry->namelen = namelen;
2065 		__assign_str(name, name);
2066 		__entry->major_hash = major_hash;
2067 		__entry->minor_hash = minor_hash;
2068 		__entry->blkno = blkno;
2069 	),
2070 	TP_printk("%llu %.*s %u %u %llu", __entry->ino,
2071 		   __entry->namelen, __get_str(name),
2072 		  __entry->major_hash, __entry->minor_hash, __entry->blkno)
2073 );
2074 
2075 DEFINE_OCFS2_UINT_UINT_EVENT(ocfs2_dx_dir_search_leaf_info);
2076 
2077 DEFINE_OCFS2_ULL_INT_EVENT(ocfs2_delete_entry_dx);
2078 
2079 DEFINE_OCFS2_ULL_EVENT(ocfs2_readdir);
2080 
2081 TRACE_EVENT(ocfs2_find_files_on_disk,
2082 	TP_PROTO(int namelen, const char *name, void *blkno,
2083 		 unsigned long long dir),
2084 	TP_ARGS(namelen, name, blkno, dir),
2085 	TP_STRUCT__entry(
2086 		__field(int, namelen)
2087 		__string(name, name)
2088 		__field(void *, blkno)
2089 		__field(unsigned long long, dir)
2090 	),
2091 	TP_fast_assign(
2092 		__entry->namelen = namelen;
2093 		__assign_str(name, name);
2094 		__entry->blkno = blkno;
2095 		__entry->dir = dir;
2096 	),
2097 	TP_printk("%.*s %p %llu", __entry->namelen, __get_str(name),
2098 		  __entry->blkno, __entry->dir)
2099 );
2100 
2101 TRACE_EVENT(ocfs2_check_dir_for_entry,
2102 	TP_PROTO(unsigned long long dir, int namelen, const char *name),
2103 	TP_ARGS(dir, namelen, name),
2104 	TP_STRUCT__entry(
2105 		__field(unsigned long long, dir)
2106 		__field(int, namelen)
2107 		__string(name, name)
2108 	),
2109 	TP_fast_assign(
2110 		__entry->dir = dir;
2111 		__entry->namelen = namelen;
2112 		__assign_str(name, name);
2113 	),
2114 	TP_printk("%llu %.*s", __entry->dir,
2115 		  __entry->namelen, __get_str(name))
2116 );
2117 
2118 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_dx_dir_attach_index);
2119 
2120 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_dx_dir_format_cluster);
2121 
2122 TRACE_EVENT(ocfs2_dx_dir_index_root_block,
2123 	TP_PROTO(unsigned long long dir,
2124 		 unsigned int major_hash, unsigned int minor_hash,
2125 		 int namelen, const char *name, unsigned int num_used),
2126 	TP_ARGS(dir, major_hash, minor_hash, namelen, name, num_used),
2127 	TP_STRUCT__entry(
2128 		__field(unsigned long long, dir)
2129 		__field(unsigned int, major_hash)
2130 		__field(unsigned int, minor_hash)
2131 		__field(int, namelen)
2132 		__string(name, name)
2133 		__field(unsigned int, num_used)
2134 	),
2135 	TP_fast_assign(
2136 		__entry->dir = dir;
2137 		__entry->major_hash = major_hash;
2138 		__entry->minor_hash = minor_hash;
2139 		__entry->namelen = namelen;
2140 		__assign_str(name, name);
2141 		__entry->num_used = num_used;
2142 	),
2143 	TP_printk("%llu %x %x %.*s %u", __entry->dir,
2144 		  __entry->major_hash, __entry->minor_hash,
2145 		   __entry->namelen, __get_str(name), __entry->num_used)
2146 );
2147 
2148 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_extend_dir);
2149 
2150 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_dx_dir_rebalance);
2151 
2152 DEFINE_OCFS2_UINT_UINT_UINT_EVENT(ocfs2_dx_dir_rebalance_split);
2153 
2154 DEFINE_OCFS2_ULL_INT_EVENT(ocfs2_prepare_dir_for_insert);
2155 
2156 /* End of trace events for fs/ocfs2/dir.c. */
2157 
2158 /* Trace events for fs/ocfs2/namei.c. */
2159 
2160 DECLARE_EVENT_CLASS(ocfs2__dentry_ops,
2161 	TP_PROTO(void *dir, void *dentry, int name_len, const char *name,
2162 		 unsigned long long dir_blkno, unsigned long long extra),
2163 	TP_ARGS(dir, dentry, name_len, name, dir_blkno, extra),
2164 	TP_STRUCT__entry(
2165 		__field(void *, dir)
2166 		__field(void *, dentry)
2167 		__field(int, name_len)
2168 		__string(name, name)
2169 		__field(unsigned long long, dir_blkno)
2170 		__field(unsigned long long, extra)
2171 	),
2172 	TP_fast_assign(
2173 		__entry->dir = dir;
2174 		__entry->dentry = dentry;
2175 		__entry->name_len = name_len;
2176 		__assign_str(name, name);
2177 		__entry->dir_blkno = dir_blkno;
2178 		__entry->extra = extra;
2179 	),
2180 	TP_printk("%p %p %.*s %llu %llu", __entry->dir, __entry->dentry,
2181 		  __entry->name_len, __get_str(name),
2182 		  __entry->dir_blkno, __entry->extra)
2183 );
2184 
2185 #define DEFINE_OCFS2_DENTRY_OPS(name)					\
2186 DEFINE_EVENT(ocfs2__dentry_ops, name,					\
2187 TP_PROTO(void *dir, void *dentry, int name_len, const char *name,	\
2188 	 unsigned long long dir_blkno, unsigned long long extra),	\
2189 	TP_ARGS(dir, dentry, name_len, name, dir_blkno, extra))
2190 
2191 DEFINE_OCFS2_DENTRY_OPS(ocfs2_lookup);
2192 
2193 DEFINE_OCFS2_DENTRY_OPS(ocfs2_mkdir);
2194 
2195 DEFINE_OCFS2_DENTRY_OPS(ocfs2_create);
2196 
2197 DEFINE_OCFS2_DENTRY_OPS(ocfs2_unlink);
2198 
2199 DEFINE_OCFS2_DENTRY_OPS(ocfs2_symlink_create);
2200 
2201 DEFINE_OCFS2_DENTRY_OPS(ocfs2_mv_orphaned_inode_to_new);
2202 
2203 DEFINE_OCFS2_POINTER_EVENT(ocfs2_lookup_ret);
2204 
2205 TRACE_EVENT(ocfs2_mknod,
2206 	TP_PROTO(void *dir, void *dentry, int name_len, const char *name,
2207 		 unsigned long long dir_blkno, unsigned long dev, int mode),
2208 	TP_ARGS(dir, dentry, name_len, name, dir_blkno, dev, mode),
2209 	TP_STRUCT__entry(
2210 		__field(void *, dir)
2211 		__field(void *, dentry)
2212 		__field(int, name_len)
2213 		__string(name, name)
2214 		__field(unsigned long long, dir_blkno)
2215 		__field(unsigned long, dev)
2216 		__field(int, mode)
2217 	),
2218 	TP_fast_assign(
2219 		__entry->dir = dir;
2220 		__entry->dentry = dentry;
2221 		__entry->name_len = name_len;
2222 		__assign_str(name, name);
2223 		__entry->dir_blkno = dir_blkno;
2224 		__entry->dev = dev;
2225 		__entry->mode = mode;
2226 	),
2227 	TP_printk("%p %p %.*s %llu %lu %d", __entry->dir, __entry->dentry,
2228 		  __entry->name_len, __get_str(name),
2229 		  __entry->dir_blkno, __entry->dev, __entry->mode)
2230 );
2231 
2232 TRACE_EVENT(ocfs2_link,
2233 	TP_PROTO(unsigned long long ino, int old_len, const char *old_name,
2234 		 int name_len, const char *name),
2235 	TP_ARGS(ino, old_len, old_name, name_len, name),
2236 	TP_STRUCT__entry(
2237 		__field(unsigned long long, ino)
2238 		__field(int, old_len)
2239 		__string(old_name, old_name)
2240 		__field(int, name_len)
2241 		__string(name, name)
2242 	),
2243 	TP_fast_assign(
2244 		__entry->ino = ino;
2245 		__entry->old_len = old_len;
2246 		__assign_str(old_name, old_name);
2247 		__entry->name_len = name_len;
2248 		__assign_str(name, name);
2249 	),
2250 	TP_printk("%llu %.*s %.*s", __entry->ino,
2251 		  __entry->old_len, __get_str(old_name),
2252 		  __entry->name_len, __get_str(name))
2253 );
2254 
2255 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_unlink_noent);
2256 
2257 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_double_lock);
2258 
2259 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_double_lock_end);
2260 
2261 TRACE_EVENT(ocfs2_rename,
2262 	TP_PROTO(void *old_dir, void *old_dentry,
2263 		 void *new_dir, void *new_dentry,
2264 		 int old_len, const char *old_name,
2265 		 int new_len, const char *new_name),
2266 	TP_ARGS(old_dir, old_dentry, new_dir, new_dentry,
2267 		old_len, old_name, new_len, new_name),
2268 	TP_STRUCT__entry(
2269 		__field(void *, old_dir)
2270 		__field(void *, old_dentry)
2271 		__field(void *, new_dir)
2272 		__field(void *, new_dentry)
2273 		__field(int, old_len)
2274 		__string(old_name, old_name)
2275 		__field(int, new_len)
2276 		__string(new_name, new_name)
2277 	),
2278 	TP_fast_assign(
2279 		__entry->old_dir = old_dir;
2280 		__entry->old_dentry = old_dentry;
2281 		__entry->new_dir = new_dir;
2282 		__entry->new_dentry = new_dentry;
2283 		__entry->old_len = old_len;
2284 		__assign_str(old_name, old_name);
2285 		__entry->new_len = new_len;
2286 		__assign_str(new_name, new_name);
2287 	),
2288 	TP_printk("%p %p %p %p %.*s %.*s",
2289 		  __entry->old_dir, __entry->old_dentry,
2290 		  __entry->new_dir, __entry->new_dentry,
2291 		  __entry->old_len, __get_str(old_name),
2292 		  __entry->new_len, __get_str(new_name))
2293 );
2294 
2295 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_rename_not_permitted);
2296 
2297 TRACE_EVENT(ocfs2_rename_target_exists,
2298 	TP_PROTO(int new_len, const char *new_name),
2299 	TP_ARGS(new_len, new_name),
2300 	TP_STRUCT__entry(
2301 		__field(int, new_len)
2302 		__string(new_name, new_name)
2303 	),
2304 	TP_fast_assign(
2305 		__entry->new_len = new_len;
2306 		__assign_str(new_name, new_name);
2307 	),
2308 	TP_printk("%.*s", __entry->new_len, __get_str(new_name))
2309 );
2310 
2311 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_rename_disagree);
2312 
2313 TRACE_EVENT(ocfs2_rename_over_existing,
2314 	TP_PROTO(unsigned long long new_blkno, void *new_bh,
2315 		 unsigned long long newdi_blkno),
2316 	TP_ARGS(new_blkno, new_bh, newdi_blkno),
2317 	TP_STRUCT__entry(
2318 		__field(unsigned long long, new_blkno)
2319 		__field(void *, new_bh)
2320 		__field(unsigned long long, newdi_blkno)
2321 	),
2322 	TP_fast_assign(
2323 		__entry->new_blkno = new_blkno;
2324 		__entry->new_bh = new_bh;
2325 		__entry->newdi_blkno = newdi_blkno;
2326 	),
2327 	TP_printk("%llu %p %llu", __entry->new_blkno, __entry->new_bh,
2328 		  __entry->newdi_blkno)
2329 );
2330 
2331 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_create_symlink_data);
2332 
2333 TRACE_EVENT(ocfs2_symlink_begin,
2334 	TP_PROTO(void *dir, void *dentry, const char *symname,
2335 		 int len, const char *name),
2336 	TP_ARGS(dir, dentry, symname, len, name),
2337 	TP_STRUCT__entry(
2338 		__field(void *, dir)
2339 		__field(void *, dentry)
2340 		__field(const char *, symname)
2341 		__field(int, len)
2342 		__string(name, name)
2343 	),
2344 	TP_fast_assign(
2345 		__entry->dir = dir;
2346 		__entry->dentry = dentry;
2347 		__entry->symname = symname;
2348 		__entry->len = len;
2349 		__assign_str(name, name);
2350 	),
2351 	TP_printk("%p %p %s %.*s", __entry->dir, __entry->dentry,
2352 		  __entry->symname, __entry->len, __get_str(name))
2353 );
2354 
2355 TRACE_EVENT(ocfs2_blkno_stringify,
2356 	TP_PROTO(unsigned long long blkno, const char *name, int namelen),
2357 	TP_ARGS(blkno, name, namelen),
2358 	TP_STRUCT__entry(
2359 		__field(unsigned long long, blkno)
2360 		__string(name, name)
2361 		__field(int, namelen)
2362 	),
2363 	TP_fast_assign(
2364 		__entry->blkno = blkno;
2365 		__assign_str(name, name);
2366 		__entry->namelen = namelen;
2367 	),
2368 	TP_printk("%llu %s %d", __entry->blkno, __get_str(name),
2369 		  __entry->namelen)
2370 );
2371 
2372 DEFINE_OCFS2_ULL_EVENT(ocfs2_orphan_add_begin);
2373 
2374 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_orphan_add_end);
2375 
2376 TRACE_EVENT(ocfs2_orphan_del,
2377 	TP_PROTO(unsigned long long dir, const char *name, int namelen),
2378 	TP_ARGS(dir, name, namelen),
2379 	TP_STRUCT__entry(
2380 		__field(unsigned long long, dir)
2381 		__string(name, name)
2382 		__field(int, namelen)
2383 	),
2384 	TP_fast_assign(
2385 		__entry->dir = dir;
2386 		__assign_str(name, name);
2387 		__entry->namelen = namelen;
2388 	),
2389 	TP_printk("%llu %s %d", __entry->dir, __get_str(name),
2390 		  __entry->namelen)
2391 );
2392 
2393 /* End of trace events for fs/ocfs2/namei.c. */
2394 
2395 /* Trace events for fs/ocfs2/dcache.c. */
2396 
2397 TRACE_EVENT(ocfs2_dentry_revalidate,
2398 	TP_PROTO(void *dentry, int len, const char *name),
2399 	TP_ARGS(dentry, len, name),
2400 	TP_STRUCT__entry(
2401 		__field(void *, dentry)
2402 		__field(int, len)
2403 		__string(name, name)
2404 	),
2405 	TP_fast_assign(
2406 		__entry->dentry = dentry;
2407 		__entry->len = len;
2408 		__assign_str(name, name);
2409 	),
2410 	TP_printk("%p %.*s", __entry->dentry, __entry->len, __get_str(name))
2411 );
2412 
2413 TRACE_EVENT(ocfs2_dentry_revalidate_negative,
2414 	TP_PROTO(int len, const char *name, unsigned long pgen,
2415 		 unsigned long gen),
2416 	TP_ARGS(len, name, pgen, gen),
2417 	TP_STRUCT__entry(
2418 		__field(int, len)
2419 		__string(name, name)
2420 		__field(unsigned long, pgen)
2421 		__field(unsigned long, gen)
2422 	),
2423 	TP_fast_assign(
2424 		__entry->len = len;
2425 		__assign_str(name, name);
2426 		__entry->pgen = pgen;
2427 		__entry->gen = gen;
2428 	),
2429 	TP_printk("%.*s %lu %lu", __entry->len, __get_str(name),
2430 		  __entry->pgen, __entry->gen)
2431 );
2432 
2433 DEFINE_OCFS2_ULL_EVENT(ocfs2_dentry_revalidate_delete);
2434 
2435 DEFINE_OCFS2_ULL_INT_EVENT(ocfs2_dentry_revalidate_orphaned);
2436 
2437 DEFINE_OCFS2_ULL_EVENT(ocfs2_dentry_revalidate_nofsdata);
2438 
2439 DEFINE_OCFS2_INT_EVENT(ocfs2_dentry_revalidate_ret);
2440 
2441 TRACE_EVENT(ocfs2_find_local_alias,
2442 	TP_PROTO(int len, const char *name),
2443 	TP_ARGS(len, name),
2444 	TP_STRUCT__entry(
2445 		__field(int, len)
2446 		__string(name, name)
2447 	),
2448 	TP_fast_assign(
2449 		__entry->len = len;
2450 		__assign_str(name, name);
2451 	),
2452 	TP_printk("%.*s", __entry->len, __get_str(name))
2453 );
2454 
2455 TRACE_EVENT(ocfs2_dentry_attach_lock,
2456 	TP_PROTO(int len, const char *name,
2457 		 unsigned long long parent, void *fsdata),
2458 	TP_ARGS(len, name, parent, fsdata),
2459 	TP_STRUCT__entry(
2460 		__field(int, len)
2461 		__string(name, name)
2462 		__field(unsigned long long, parent)
2463 		__field(void *, fsdata)
2464 	),
2465 	TP_fast_assign(
2466 		__entry->len = len;
2467 		__assign_str(name, name);
2468 		__entry->parent = parent;
2469 		__entry->fsdata = fsdata;
2470 	),
2471 	TP_printk("%.*s %llu %p", __entry->len, __get_str(name),
2472 		  __entry->parent, __entry->fsdata)
2473 );
2474 
2475 TRACE_EVENT(ocfs2_dentry_attach_lock_found,
2476 	TP_PROTO(const char *name, unsigned long long parent,
2477 		 unsigned long long ino),
2478 	TP_ARGS(name, parent, ino),
2479 	TP_STRUCT__entry(
2480 		__string(name, name)
2481 		__field(unsigned long long, parent)
2482 		__field(unsigned long long, ino)
2483 	),
2484 	TP_fast_assign(
2485 		__assign_str(name, name);
2486 		__entry->parent = parent;
2487 		__entry->ino = ino;
2488 	),
2489 	TP_printk("%s %llu %llu", __get_str(name), __entry->parent, __entry->ino)
2490 );
2491 /* End of trace events for fs/ocfs2/dcache.c. */
2492 
2493 /* Trace events for fs/ocfs2/export.c. */
2494 
2495 TRACE_EVENT(ocfs2_get_dentry_begin,
2496 	TP_PROTO(void *sb, void *handle, unsigned long long blkno),
2497 	TP_ARGS(sb, handle, blkno),
2498 	TP_STRUCT__entry(
2499 		__field(void *, sb)
2500 		__field(void *, handle)
2501 		__field(unsigned long long, blkno)
2502 	),
2503 	TP_fast_assign(
2504 		__entry->sb = sb;
2505 		__entry->handle = handle;
2506 		__entry->blkno = blkno;
2507 	),
2508 	TP_printk("%p %p %llu", __entry->sb, __entry->handle, __entry->blkno)
2509 );
2510 
2511 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_get_dentry_test_bit);
2512 
2513 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_get_dentry_stale);
2514 
2515 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_get_dentry_generation);
2516 
2517 DEFINE_OCFS2_POINTER_EVENT(ocfs2_get_dentry_end);
2518 
2519 TRACE_EVENT(ocfs2_get_parent,
2520 	TP_PROTO(void *child, int len, const char *name,
2521 		 unsigned long long ino),
2522 	TP_ARGS(child, len, name, ino),
2523 	TP_STRUCT__entry(
2524 		__field(void *,	child)
2525 		__field(int, len)
2526 		__string(name, name)
2527 		__field(unsigned long long, ino)
2528 	),
2529 	TP_fast_assign(
2530 		__entry->child = child;
2531 		__entry->len = len;
2532 		__assign_str(name, name);
2533 		__entry->ino = ino;
2534 	),
2535 	TP_printk("%p %.*s %llu", __entry->child, __entry->len,
2536 		  __get_str(name), __entry->ino)
2537 );
2538 
2539 DEFINE_OCFS2_POINTER_EVENT(ocfs2_get_parent_end);
2540 
2541 TRACE_EVENT(ocfs2_encode_fh_begin,
2542 	TP_PROTO(void *dentry, int name_len, const char *name,
2543 		 void *fh, int len, int connectable),
2544 	TP_ARGS(dentry, name_len, name, fh, len, connectable),
2545 	TP_STRUCT__entry(
2546 		__field(void *, dentry)
2547 		__field(int, name_len)
2548 		__string(name, name)
2549 		__field(void *, fh)
2550 		__field(int, len)
2551 		__field(int, connectable)
2552 	),
2553 	TP_fast_assign(
2554 		__entry->dentry = dentry;
2555 		__entry->name_len = name_len;
2556 		__assign_str(name, name);
2557 		__entry->fh = fh;
2558 		__entry->len = len;
2559 		__entry->connectable = connectable;
2560 	),
2561 	TP_printk("%p %.*s %p %d %d", __entry->dentry, __entry->name_len,
2562 		  __get_str(name), __entry->fh, __entry->len,
2563 		  __entry->connectable)
2564 );
2565 
2566 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_encode_fh_self);
2567 
2568 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_encode_fh_parent);
2569 
2570 DEFINE_OCFS2_INT_EVENT(ocfs2_encode_fh_type);
2571 
2572 /* End of trace events for fs/ocfs2/export.c. */
2573 
2574 /* Trace events for fs/ocfs2/journal.c. */
2575 
2576 DEFINE_OCFS2_UINT_EVENT(ocfs2_commit_cache_begin);
2577 
2578 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_commit_cache_end);
2579 
2580 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_extend_trans);
2581 
2582 DEFINE_OCFS2_INT_EVENT(ocfs2_extend_trans_restart);
2583 
2584 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_allocate_extend_trans);
2585 
2586 DEFINE_OCFS2_ULL_ULL_UINT_UINT_EVENT(ocfs2_journal_access);
2587 
2588 DEFINE_OCFS2_ULL_EVENT(ocfs2_journal_dirty);
2589 
2590 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_journal_init);
2591 
2592 DEFINE_OCFS2_UINT_EVENT(ocfs2_journal_init_maxlen);
2593 
2594 DEFINE_OCFS2_INT_EVENT(ocfs2_journal_shutdown);
2595 
2596 DEFINE_OCFS2_POINTER_EVENT(ocfs2_journal_shutdown_wait);
2597 
2598 DEFINE_OCFS2_ULL_EVENT(ocfs2_complete_recovery);
2599 
2600 DEFINE_OCFS2_INT_EVENT(ocfs2_complete_recovery_end);
2601 
2602 TRACE_EVENT(ocfs2_complete_recovery_slot,
2603 	TP_PROTO(int slot, unsigned long long la_ino,
2604 		 unsigned long long tl_ino, void *qrec),
2605 	TP_ARGS(slot, la_ino, tl_ino, qrec),
2606 	TP_STRUCT__entry(
2607 		__field(int, slot)
2608 		__field(unsigned long long, la_ino)
2609 		__field(unsigned long long, tl_ino)
2610 		__field(void *, qrec)
2611 	),
2612 	TP_fast_assign(
2613 		__entry->slot = slot;
2614 		__entry->la_ino = la_ino;
2615 		__entry->tl_ino = tl_ino;
2616 		__entry->qrec = qrec;
2617 	),
2618 	TP_printk("%d %llu %llu %p", __entry->slot, __entry->la_ino,
2619 		  __entry->tl_ino, __entry->qrec)
2620 );
2621 
2622 DEFINE_OCFS2_INT_INT_EVENT(ocfs2_recovery_thread_node);
2623 
2624 DEFINE_OCFS2_INT_EVENT(ocfs2_recovery_thread_end);
2625 
2626 TRACE_EVENT(ocfs2_recovery_thread,
2627 	TP_PROTO(int node_num, int osb_node_num, int disable,
2628 		 void *recovery_thread, int map_set),
2629 	TP_ARGS(node_num, osb_node_num, disable, recovery_thread, map_set),
2630 	TP_STRUCT__entry(
2631 		__field(int, node_num)
2632 		__field(int, osb_node_num)
2633 		__field(int,disable)
2634 		__field(void *, recovery_thread)
2635 		__field(int,map_set)
2636 	),
2637 	TP_fast_assign(
2638 		__entry->node_num = node_num;
2639 		__entry->osb_node_num = osb_node_num;
2640 		__entry->disable = disable;
2641 		__entry->recovery_thread = recovery_thread;
2642 		__entry->map_set = map_set;
2643 	),
2644 	TP_printk("%d %d %d %p %d", __entry->node_num,
2645 		   __entry->osb_node_num, __entry->disable,
2646 		   __entry->recovery_thread, __entry->map_set)
2647 );
2648 
2649 DEFINE_OCFS2_UINT_UINT_UINT_EVENT(ocfs2_replay_journal_recovered);
2650 
2651 DEFINE_OCFS2_INT_EVENT(ocfs2_replay_journal_lock_err);
2652 
2653 DEFINE_OCFS2_INT_EVENT(ocfs2_replay_journal_skip);
2654 
2655 DEFINE_OCFS2_UINT_UINT_UINT_EVENT(ocfs2_recover_node);
2656 
2657 DEFINE_OCFS2_UINT_UINT_EVENT(ocfs2_recover_node_skip);
2658 
2659 DEFINE_OCFS2_UINT_UINT_EVENT(ocfs2_mark_dead_nodes);
2660 
2661 DEFINE_OCFS2_UINT_UINT_UINT_EVENT(ocfs2_queue_orphan_scan_begin);
2662 
2663 DEFINE_OCFS2_UINT_UINT_UINT_EVENT(ocfs2_queue_orphan_scan_end);
2664 
2665 DEFINE_OCFS2_ULL_EVENT(ocfs2_orphan_filldir);
2666 
2667 DEFINE_OCFS2_INT_EVENT(ocfs2_recover_orphans);
2668 
2669 DEFINE_OCFS2_ULL_EVENT(ocfs2_recover_orphans_iput);
2670 
2671 DEFINE_OCFS2_INT_EVENT(ocfs2_wait_on_mount);
2672 
2673 /* End of trace events for fs/ocfs2/journal.c. */
2674 
2675 /* Trace events for fs/ocfs2/buffer_head_io.c. */
2676 
2677 DEFINE_OCFS2_ULL_UINT_EVENT(ocfs2_read_blocks_sync);
2678 
2679 DEFINE_OCFS2_ULL_EVENT(ocfs2_read_blocks_sync_jbd);
2680 
2681 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_read_blocks_from_disk);
2682 
2683 DEFINE_OCFS2_ULL_INT_INT_INT_EVENT(ocfs2_read_blocks_bh);
2684 
2685 DEFINE_OCFS2_ULL_INT_INT_INT_EVENT(ocfs2_read_blocks_end);
2686 
2687 TRACE_EVENT(ocfs2_write_block,
2688 	TP_PROTO(unsigned long long block, void *ci),
2689 	TP_ARGS(block, ci),
2690 	TP_STRUCT__entry(
2691 		__field(unsigned long long, block)
2692 		__field(void *, ci)
2693 	),
2694 	TP_fast_assign(
2695 		__entry->block = block;
2696 		__entry->ci = ci;
2697 	),
2698 	TP_printk("%llu %p", __entry->block, __entry->ci)
2699 );
2700 
2701 TRACE_EVENT(ocfs2_read_blocks_begin,
2702 	TP_PROTO(void *ci, unsigned long long block,
2703 		 unsigned int nr, int flags),
2704 	TP_ARGS(ci, block, nr, flags),
2705 	TP_STRUCT__entry(
2706 		__field(void *, ci)
2707 		__field(unsigned long long, block)
2708 		__field(unsigned int, nr)
2709 		__field(int, flags)
2710 	),
2711 	TP_fast_assign(
2712 		__entry->ci = ci;
2713 		__entry->block = block;
2714 		__entry->nr = nr;
2715 		__entry->flags = flags;
2716 	),
2717 	TP_printk("%p %llu %u %d", __entry->ci, __entry->block,
2718 		  __entry->nr, __entry->flags)
2719 );
2720 
2721 /* End of trace events for fs/ocfs2/buffer_head_io.c. */
2722 
2723 /* Trace events for fs/ocfs2/uptodate.c. */
2724 
2725 DEFINE_OCFS2_ULL_EVENT(ocfs2_purge_copied_metadata_tree);
2726 
2727 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_metadata_cache_purge);
2728 
2729 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_buffer_cached_begin);
2730 
2731 TRACE_EVENT(ocfs2_buffer_cached_end,
2732 	TP_PROTO(int index, void *item),
2733 	TP_ARGS(index, item),
2734 	TP_STRUCT__entry(
2735 		__field(int, index)
2736 		__field(void *, item)
2737 	),
2738 	TP_fast_assign(
2739 		__entry->index = index;
2740 		__entry->item = item;
2741 	),
2742 	TP_printk("%d %p", __entry->index, __entry->item)
2743 );
2744 
2745 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_append_cache_array);
2746 
2747 DEFINE_OCFS2_ULL_ULL_UINT_EVENT(ocfs2_insert_cache_tree);
2748 
2749 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_expand_cache);
2750 
2751 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_set_buffer_uptodate);
2752 
2753 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_set_buffer_uptodate_begin);
2754 
2755 DEFINE_OCFS2_ULL_UINT_UINT_EVENT(ocfs2_remove_metadata_array);
2756 
2757 DEFINE_OCFS2_ULL_ULL_EVENT(ocfs2_remove_metadata_tree);
2758 
2759 DEFINE_OCFS2_ULL_ULL_UINT_UINT_EVENT(ocfs2_remove_block_from_cache);
2760 
2761 /* End of trace events for fs/ocfs2/uptodate.c. */
2762 #endif /* _TRACE_OCFS2_H */
2763 
2764 /* This part must be outside protection */
2765 #undef TRACE_INCLUDE_PATH
2766 #define TRACE_INCLUDE_PATH .
2767 #define TRACE_INCLUDE_FILE ocfs2_trace
2768 #include <trace/define_trace.h>
2769