aboutsummaryrefslogtreecommitdiffstats
path: root/fs/xfs/xfs_trace.h
diff options
context:
space:
mode:
Diffstat (limited to 'fs/xfs/xfs_trace.h')
-rw-r--r--fs/xfs/xfs_trace.h78
1 files changed, 73 insertions, 5 deletions
diff --git a/fs/xfs/xfs_trace.h b/fs/xfs/xfs_trace.h
index 75eb54af4d58..06838c42b2a0 100644
--- a/fs/xfs/xfs_trace.h
+++ b/fs/xfs/xfs_trace.h
@@ -627,16 +627,19 @@ DECLARE_EVENT_CLASS(xfs_namespace_class,
627 TP_STRUCT__entry( 627 TP_STRUCT__entry(
628 __field(dev_t, dev) 628 __field(dev_t, dev)
629 __field(xfs_ino_t, dp_ino) 629 __field(xfs_ino_t, dp_ino)
630 __field(int, namelen)
630 __dynamic_array(char, name, name->len) 631 __dynamic_array(char, name, name->len)
631 ), 632 ),
632 TP_fast_assign( 633 TP_fast_assign(
633 __entry->dev = VFS_I(dp)->i_sb->s_dev; 634 __entry->dev = VFS_I(dp)->i_sb->s_dev;
634 __entry->dp_ino = dp->i_ino; 635 __entry->dp_ino = dp->i_ino;
636 __entry->namelen = name->len;
635 memcpy(__get_str(name), name->name, name->len); 637 memcpy(__get_str(name), name->name, name->len);
636 ), 638 ),
637 TP_printk("dev %d:%d dp ino 0x%llx name %s", 639 TP_printk("dev %d:%d dp ino 0x%llx name %.*s",
638 MAJOR(__entry->dev), MINOR(__entry->dev), 640 MAJOR(__entry->dev), MINOR(__entry->dev),
639 __entry->dp_ino, 641 __entry->dp_ino,
642 __entry->namelen,
640 __get_str(name)) 643 __get_str(name))
641) 644)
642 645
@@ -658,6 +661,8 @@ TRACE_EVENT(xfs_rename,
658 __field(dev_t, dev) 661 __field(dev_t, dev)
659 __field(xfs_ino_t, src_dp_ino) 662 __field(xfs_ino_t, src_dp_ino)
660 __field(xfs_ino_t, target_dp_ino) 663 __field(xfs_ino_t, target_dp_ino)
664 __field(int, src_namelen)
665 __field(int, target_namelen)
661 __dynamic_array(char, src_name, src_name->len) 666 __dynamic_array(char, src_name, src_name->len)
662 __dynamic_array(char, target_name, target_name->len) 667 __dynamic_array(char, target_name, target_name->len)
663 ), 668 ),
@@ -665,15 +670,20 @@ TRACE_EVENT(xfs_rename,
665 __entry->dev = VFS_I(src_dp)->i_sb->s_dev; 670 __entry->dev = VFS_I(src_dp)->i_sb->s_dev;
666 __entry->src_dp_ino = src_dp->i_ino; 671 __entry->src_dp_ino = src_dp->i_ino;
667 __entry->target_dp_ino = target_dp->i_ino; 672 __entry->target_dp_ino = target_dp->i_ino;
673 __entry->src_namelen = src_name->len;
674 __entry->target_namelen = target_name->len;
668 memcpy(__get_str(src_name), src_name->name, src_name->len); 675 memcpy(__get_str(src_name), src_name->name, src_name->len);
669 memcpy(__get_str(target_name), target_name->name, target_name->len); 676 memcpy(__get_str(target_name), target_name->name,
677 target_name->len);
670 ), 678 ),
671 TP_printk("dev %d:%d src dp ino 0x%llx target dp ino 0x%llx" 679 TP_printk("dev %d:%d src dp ino 0x%llx target dp ino 0x%llx"
672 " src name %s target name %s", 680 " src name %.*s target name %.*s",
673 MAJOR(__entry->dev), MINOR(__entry->dev), 681 MAJOR(__entry->dev), MINOR(__entry->dev),
674 __entry->src_dp_ino, 682 __entry->src_dp_ino,
675 __entry->target_dp_ino, 683 __entry->target_dp_ino,
684 __entry->src_namelen,
676 __get_str(src_name), 685 __get_str(src_name),
686 __entry->target_namelen,
677 __get_str(target_name)) 687 __get_str(target_name))
678) 688)
679 689
@@ -1408,7 +1418,7 @@ DEFINE_ALLOC_EVENT(xfs_alloc_vextent_noagbp);
1408DEFINE_ALLOC_EVENT(xfs_alloc_vextent_loopfailed); 1418DEFINE_ALLOC_EVENT(xfs_alloc_vextent_loopfailed);
1409DEFINE_ALLOC_EVENT(xfs_alloc_vextent_allfailed); 1419DEFINE_ALLOC_EVENT(xfs_alloc_vextent_allfailed);
1410 1420
1411DECLARE_EVENT_CLASS(xfs_dir2_class, 1421DECLARE_EVENT_CLASS(xfs_da_class,
1412 TP_PROTO(struct xfs_da_args *args), 1422 TP_PROTO(struct xfs_da_args *args),
1413 TP_ARGS(args), 1423 TP_ARGS(args),
1414 TP_STRUCT__entry( 1424 TP_STRUCT__entry(
@@ -1443,7 +1453,7 @@ DECLARE_EVENT_CLASS(xfs_dir2_class,
1443) 1453)
1444 1454
1445#define DEFINE_DIR2_EVENT(name) \ 1455#define DEFINE_DIR2_EVENT(name) \
1446DEFINE_EVENT(xfs_dir2_class, name, \ 1456DEFINE_EVENT(xfs_da_class, name, \
1447 TP_PROTO(struct xfs_da_args *args), \ 1457 TP_PROTO(struct xfs_da_args *args), \
1448 TP_ARGS(args)) 1458 TP_ARGS(args))
1449DEFINE_DIR2_EVENT(xfs_dir2_sf_addname); 1459DEFINE_DIR2_EVENT(xfs_dir2_sf_addname);
@@ -1472,6 +1482,64 @@ DEFINE_DIR2_EVENT(xfs_dir2_node_replace);
1472DEFINE_DIR2_EVENT(xfs_dir2_node_removename); 1482DEFINE_DIR2_EVENT(xfs_dir2_node_removename);
1473DEFINE_DIR2_EVENT(xfs_dir2_node_to_leaf); 1483DEFINE_DIR2_EVENT(xfs_dir2_node_to_leaf);
1474 1484
1485#define DEFINE_ATTR_EVENT(name) \
1486DEFINE_EVENT(xfs_da_class, name, \
1487 TP_PROTO(struct xfs_da_args *args), \
1488 TP_ARGS(args))
1489DEFINE_ATTR_EVENT(xfs_attr_sf_add);
1490DEFINE_ATTR_EVENT(xfs_attr_sf_addname);
1491DEFINE_ATTR_EVENT(xfs_attr_sf_create);
1492DEFINE_ATTR_EVENT(xfs_attr_sf_lookup);
1493DEFINE_ATTR_EVENT(xfs_attr_sf_remove);
1494DEFINE_ATTR_EVENT(xfs_attr_sf_removename);
1495DEFINE_ATTR_EVENT(xfs_attr_sf_to_leaf);
1496
1497DEFINE_ATTR_EVENT(xfs_attr_leaf_add);
1498DEFINE_ATTR_EVENT(xfs_attr_leaf_add_old);
1499DEFINE_ATTR_EVENT(xfs_attr_leaf_add_new);
1500DEFINE_ATTR_EVENT(xfs_attr_leaf_addname);
1501DEFINE_ATTR_EVENT(xfs_attr_leaf_create);
1502DEFINE_ATTR_EVENT(xfs_attr_leaf_lookup);
1503DEFINE_ATTR_EVENT(xfs_attr_leaf_replace);
1504DEFINE_ATTR_EVENT(xfs_attr_leaf_removename);
1505DEFINE_ATTR_EVENT(xfs_attr_leaf_split);
1506DEFINE_ATTR_EVENT(xfs_attr_leaf_split_before);
1507DEFINE_ATTR_EVENT(xfs_attr_leaf_split_after);
1508DEFINE_ATTR_EVENT(xfs_attr_leaf_clearflag);
1509DEFINE_ATTR_EVENT(xfs_attr_leaf_setflag);
1510DEFINE_ATTR_EVENT(xfs_attr_leaf_flipflags);
1511DEFINE_ATTR_EVENT(xfs_attr_leaf_to_sf);
1512DEFINE_ATTR_EVENT(xfs_attr_leaf_to_node);
1513DEFINE_ATTR_EVENT(xfs_attr_leaf_rebalance);
1514DEFINE_ATTR_EVENT(xfs_attr_leaf_unbalance);
1515
1516DEFINE_ATTR_EVENT(xfs_attr_node_addname);
1517DEFINE_ATTR_EVENT(xfs_attr_node_lookup);
1518DEFINE_ATTR_EVENT(xfs_attr_node_replace);
1519DEFINE_ATTR_EVENT(xfs_attr_node_removename);
1520
1521#define DEFINE_DA_EVENT(name) \
1522DEFINE_EVENT(xfs_da_class, name, \
1523 TP_PROTO(struct xfs_da_args *args), \
1524 TP_ARGS(args))
1525DEFINE_DA_EVENT(xfs_da_split);
1526DEFINE_DA_EVENT(xfs_da_join);
1527DEFINE_DA_EVENT(xfs_da_link_before);
1528DEFINE_DA_EVENT(xfs_da_link_after);
1529DEFINE_DA_EVENT(xfs_da_unlink_back);
1530DEFINE_DA_EVENT(xfs_da_unlink_forward);
1531DEFINE_DA_EVENT(xfs_da_root_split);
1532DEFINE_DA_EVENT(xfs_da_root_join);
1533DEFINE_DA_EVENT(xfs_da_node_add);
1534DEFINE_DA_EVENT(xfs_da_node_create);
1535DEFINE_DA_EVENT(xfs_da_node_split);
1536DEFINE_DA_EVENT(xfs_da_node_remove);
1537DEFINE_DA_EVENT(xfs_da_node_rebalance);
1538DEFINE_DA_EVENT(xfs_da_node_unbalance);
1539DEFINE_DA_EVENT(xfs_da_swap_lastblock);
1540DEFINE_DA_EVENT(xfs_da_grow_inode);
1541DEFINE_DA_EVENT(xfs_da_shrink_inode);
1542
1475DECLARE_EVENT_CLASS(xfs_dir2_space_class, 1543DECLARE_EVENT_CLASS(xfs_dir2_space_class,
1476 TP_PROTO(struct xfs_da_args *args, int idx), 1544 TP_PROTO(struct xfs_da_args *args, int idx),
1477 TP_ARGS(args, idx), 1545 TP_ARGS(args, idx),