@@ -283,6 +283,169 @@ TRACE_EVENT(xfs_scrub_incomplete,
283
283
__entry -> ret_ip )
284
284
);
285
285
286
+ TRACE_EVENT (xfs_scrub_btree_op_error ,
287
+ TP_PROTO (struct xfs_scrub_context * sc , struct xfs_btree_cur * cur ,
288
+ int level , int error , void * ret_ip ),
289
+ TP_ARGS (sc , cur , level , error , ret_ip ),
290
+ TP_STRUCT__entry (
291
+ __field (dev_t , dev )
292
+ __field (unsigned int , type )
293
+ __field (xfs_btnum_t , btnum )
294
+ __field (int , level )
295
+ __field (xfs_agnumber_t , agno )
296
+ __field (xfs_agblock_t , bno )
297
+ __field (int , ptr );
298
+ __field (int , error )
299
+ __field (void * , ret_ip )
300
+ ),
301
+ TP_fast_assign (
302
+ xfs_fsblock_t fsbno = xfs_scrub_btree_cur_fsbno (cur , level );
303
+
304
+ __entry -> dev = sc -> mp -> m_super -> s_dev ;
305
+ __entry -> type = sc -> sm -> sm_type ;
306
+ __entry -> btnum = cur -> bc_btnum ;
307
+ __entry -> level = level ;
308
+ __entry -> agno = XFS_FSB_TO_AGNO (cur -> bc_mp , fsbno );
309
+ __entry -> bno = XFS_FSB_TO_AGBNO (cur -> bc_mp , fsbno );
310
+ __entry -> ptr = cur -> bc_ptrs [level ];
311
+ __entry -> error = error ;
312
+ __entry -> ret_ip = ret_ip ;
313
+ ),
314
+ TP_printk ("dev %d:%d type %u btnum %d level %d ptr %d agno %u agbno %u error %d ret_ip %pF" ,
315
+ MAJOR (__entry -> dev ), MINOR (__entry -> dev ),
316
+ __entry -> type ,
317
+ __entry -> btnum ,
318
+ __entry -> level ,
319
+ __entry -> ptr ,
320
+ __entry -> agno ,
321
+ __entry -> bno ,
322
+ __entry -> error ,
323
+ __entry -> ret_ip )
324
+ );
325
+
326
+ TRACE_EVENT (xfs_scrub_ifork_btree_op_error ,
327
+ TP_PROTO (struct xfs_scrub_context * sc , struct xfs_btree_cur * cur ,
328
+ int level , int error , void * ret_ip ),
329
+ TP_ARGS (sc , cur , level , error , ret_ip ),
330
+ TP_STRUCT__entry (
331
+ __field (dev_t , dev )
332
+ __field (xfs_ino_t , ino )
333
+ __field (int , whichfork )
334
+ __field (unsigned int , type )
335
+ __field (xfs_btnum_t , btnum )
336
+ __field (int , level )
337
+ __field (int , ptr )
338
+ __field (xfs_agnumber_t , agno )
339
+ __field (xfs_agblock_t , bno )
340
+ __field (int , error )
341
+ __field (void * , ret_ip )
342
+ ),
343
+ TP_fast_assign (
344
+ xfs_fsblock_t fsbno = xfs_scrub_btree_cur_fsbno (cur , level );
345
+ __entry -> dev = sc -> mp -> m_super -> s_dev ;
346
+ __entry -> ino = sc -> ip -> i_ino ;
347
+ __entry -> whichfork = cur -> bc_private .b .whichfork ;
348
+ __entry -> type = sc -> sm -> sm_type ;
349
+ __entry -> btnum = cur -> bc_btnum ;
350
+ __entry -> level = level ;
351
+ __entry -> ptr = cur -> bc_ptrs [level ];
352
+ __entry -> agno = XFS_FSB_TO_AGNO (cur -> bc_mp , fsbno );
353
+ __entry -> bno = XFS_FSB_TO_AGBNO (cur -> bc_mp , fsbno );
354
+ __entry -> error = error ;
355
+ __entry -> ret_ip = ret_ip ;
356
+ ),
357
+ TP_printk ("dev %d:%d ino %llu fork %d type %u btnum %d level %d ptr %d agno %u agbno %u error %d ret_ip %pF" ,
358
+ MAJOR (__entry -> dev ), MINOR (__entry -> dev ),
359
+ __entry -> ino ,
360
+ __entry -> whichfork ,
361
+ __entry -> type ,
362
+ __entry -> btnum ,
363
+ __entry -> level ,
364
+ __entry -> ptr ,
365
+ __entry -> agno ,
366
+ __entry -> bno ,
367
+ __entry -> error ,
368
+ __entry -> ret_ip )
369
+ );
370
+
371
+ TRACE_EVENT (xfs_scrub_btree_error ,
372
+ TP_PROTO (struct xfs_scrub_context * sc , struct xfs_btree_cur * cur ,
373
+ int level , void * ret_ip ),
374
+ TP_ARGS (sc , cur , level , ret_ip ),
375
+ TP_STRUCT__entry (
376
+ __field (dev_t , dev )
377
+ __field (unsigned int , type )
378
+ __field (xfs_btnum_t , btnum )
379
+ __field (int , level )
380
+ __field (xfs_agnumber_t , agno )
381
+ __field (xfs_agblock_t , bno )
382
+ __field (int , ptr );
383
+ __field (void * , ret_ip )
384
+ ),
385
+ TP_fast_assign (
386
+ xfs_fsblock_t fsbno = xfs_scrub_btree_cur_fsbno (cur , level );
387
+ __entry -> dev = sc -> mp -> m_super -> s_dev ;
388
+ __entry -> type = sc -> sm -> sm_type ;
389
+ __entry -> btnum = cur -> bc_btnum ;
390
+ __entry -> level = level ;
391
+ __entry -> agno = XFS_FSB_TO_AGNO (cur -> bc_mp , fsbno );
392
+ __entry -> bno = XFS_FSB_TO_AGBNO (cur -> bc_mp , fsbno );
393
+ __entry -> ptr = cur -> bc_ptrs [level ];
394
+ __entry -> ret_ip = ret_ip ;
395
+ ),
396
+ TP_printk ("dev %d:%d type %u btnum %d level %d ptr %d agno %u agbno %u ret_ip %pF" ,
397
+ MAJOR (__entry -> dev ), MINOR (__entry -> dev ),
398
+ __entry -> type ,
399
+ __entry -> btnum ,
400
+ __entry -> level ,
401
+ __entry -> ptr ,
402
+ __entry -> agno ,
403
+ __entry -> bno ,
404
+ __entry -> ret_ip )
405
+ );
406
+
407
+ TRACE_EVENT (xfs_scrub_ifork_btree_error ,
408
+ TP_PROTO (struct xfs_scrub_context * sc , struct xfs_btree_cur * cur ,
409
+ int level , void * ret_ip ),
410
+ TP_ARGS (sc , cur , level , ret_ip ),
411
+ TP_STRUCT__entry (
412
+ __field (dev_t , dev )
413
+ __field (xfs_ino_t , ino )
414
+ __field (int , whichfork )
415
+ __field (unsigned int , type )
416
+ __field (xfs_btnum_t , btnum )
417
+ __field (int , level )
418
+ __field (xfs_agnumber_t , agno )
419
+ __field (xfs_agblock_t , bno )
420
+ __field (int , ptr );
421
+ __field (void * , ret_ip )
422
+ ),
423
+ TP_fast_assign (
424
+ xfs_fsblock_t fsbno = xfs_scrub_btree_cur_fsbno (cur , level );
425
+ __entry -> dev = sc -> mp -> m_super -> s_dev ;
426
+ __entry -> ino = sc -> ip -> i_ino ;
427
+ __entry -> whichfork = cur -> bc_private .b .whichfork ;
428
+ __entry -> type = sc -> sm -> sm_type ;
429
+ __entry -> btnum = cur -> bc_btnum ;
430
+ __entry -> level = level ;
431
+ __entry -> agno = XFS_FSB_TO_AGNO (cur -> bc_mp , fsbno );
432
+ __entry -> bno = XFS_FSB_TO_AGBNO (cur -> bc_mp , fsbno );
433
+ __entry -> ptr = cur -> bc_ptrs [level ];
434
+ __entry -> ret_ip = ret_ip ;
435
+ ),
436
+ TP_printk ("dev %d:%d ino %llu fork %d type %u btnum %d level %d ptr %d agno %u agbno %u ret_ip %pF" ,
437
+ MAJOR (__entry -> dev ), MINOR (__entry -> dev ),
438
+ __entry -> ino ,
439
+ __entry -> whichfork ,
440
+ __entry -> type ,
441
+ __entry -> btnum ,
442
+ __entry -> level ,
443
+ __entry -> ptr ,
444
+ __entry -> agno ,
445
+ __entry -> bno ,
446
+ __entry -> ret_ip )
447
+ );
448
+
286
449
#endif /* _TRACE_XFS_SCRUB_TRACE_H */
287
450
288
451
#undef TRACE_INCLUDE_PATH
0 commit comments