diff options
Diffstat (limited to 'fs/xfs/xfs_trace.h')
-rw-r--r-- | fs/xfs/xfs_trace.h | 78 |
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); | |||
1408 | DEFINE_ALLOC_EVENT(xfs_alloc_vextent_loopfailed); | 1418 | DEFINE_ALLOC_EVENT(xfs_alloc_vextent_loopfailed); |
1409 | DEFINE_ALLOC_EVENT(xfs_alloc_vextent_allfailed); | 1419 | DEFINE_ALLOC_EVENT(xfs_alloc_vextent_allfailed); |
1410 | 1420 | ||
1411 | DECLARE_EVENT_CLASS(xfs_dir2_class, | 1421 | DECLARE_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) \ |
1446 | DEFINE_EVENT(xfs_dir2_class, name, \ | 1456 | DEFINE_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)) |
1449 | DEFINE_DIR2_EVENT(xfs_dir2_sf_addname); | 1459 | DEFINE_DIR2_EVENT(xfs_dir2_sf_addname); |
@@ -1472,6 +1482,64 @@ DEFINE_DIR2_EVENT(xfs_dir2_node_replace); | |||
1472 | DEFINE_DIR2_EVENT(xfs_dir2_node_removename); | 1482 | DEFINE_DIR2_EVENT(xfs_dir2_node_removename); |
1473 | DEFINE_DIR2_EVENT(xfs_dir2_node_to_leaf); | 1483 | DEFINE_DIR2_EVENT(xfs_dir2_node_to_leaf); |
1474 | 1484 | ||
1485 | #define DEFINE_ATTR_EVENT(name) \ | ||
1486 | DEFINE_EVENT(xfs_da_class, name, \ | ||
1487 | TP_PROTO(struct xfs_da_args *args), \ | ||
1488 | TP_ARGS(args)) | ||
1489 | DEFINE_ATTR_EVENT(xfs_attr_sf_add); | ||
1490 | DEFINE_ATTR_EVENT(xfs_attr_sf_addname); | ||
1491 | DEFINE_ATTR_EVENT(xfs_attr_sf_create); | ||
1492 | DEFINE_ATTR_EVENT(xfs_attr_sf_lookup); | ||
1493 | DEFINE_ATTR_EVENT(xfs_attr_sf_remove); | ||
1494 | DEFINE_ATTR_EVENT(xfs_attr_sf_removename); | ||
1495 | DEFINE_ATTR_EVENT(xfs_attr_sf_to_leaf); | ||
1496 | |||
1497 | DEFINE_ATTR_EVENT(xfs_attr_leaf_add); | ||
1498 | DEFINE_ATTR_EVENT(xfs_attr_leaf_add_old); | ||
1499 | DEFINE_ATTR_EVENT(xfs_attr_leaf_add_new); | ||
1500 | DEFINE_ATTR_EVENT(xfs_attr_leaf_addname); | ||
1501 | DEFINE_ATTR_EVENT(xfs_attr_leaf_create); | ||
1502 | DEFINE_ATTR_EVENT(xfs_attr_leaf_lookup); | ||
1503 | DEFINE_ATTR_EVENT(xfs_attr_leaf_replace); | ||
1504 | DEFINE_ATTR_EVENT(xfs_attr_leaf_removename); | ||
1505 | DEFINE_ATTR_EVENT(xfs_attr_leaf_split); | ||
1506 | DEFINE_ATTR_EVENT(xfs_attr_leaf_split_before); | ||
1507 | DEFINE_ATTR_EVENT(xfs_attr_leaf_split_after); | ||
1508 | DEFINE_ATTR_EVENT(xfs_attr_leaf_clearflag); | ||
1509 | DEFINE_ATTR_EVENT(xfs_attr_leaf_setflag); | ||
1510 | DEFINE_ATTR_EVENT(xfs_attr_leaf_flipflags); | ||
1511 | DEFINE_ATTR_EVENT(xfs_attr_leaf_to_sf); | ||
1512 | DEFINE_ATTR_EVENT(xfs_attr_leaf_to_node); | ||
1513 | DEFINE_ATTR_EVENT(xfs_attr_leaf_rebalance); | ||
1514 | DEFINE_ATTR_EVENT(xfs_attr_leaf_unbalance); | ||
1515 | |||
1516 | DEFINE_ATTR_EVENT(xfs_attr_node_addname); | ||
1517 | DEFINE_ATTR_EVENT(xfs_attr_node_lookup); | ||
1518 | DEFINE_ATTR_EVENT(xfs_attr_node_replace); | ||
1519 | DEFINE_ATTR_EVENT(xfs_attr_node_removename); | ||
1520 | |||
1521 | #define DEFINE_DA_EVENT(name) \ | ||
1522 | DEFINE_EVENT(xfs_da_class, name, \ | ||
1523 | TP_PROTO(struct xfs_da_args *args), \ | ||
1524 | TP_ARGS(args)) | ||
1525 | DEFINE_DA_EVENT(xfs_da_split); | ||
1526 | DEFINE_DA_EVENT(xfs_da_join); | ||
1527 | DEFINE_DA_EVENT(xfs_da_link_before); | ||
1528 | DEFINE_DA_EVENT(xfs_da_link_after); | ||
1529 | DEFINE_DA_EVENT(xfs_da_unlink_back); | ||
1530 | DEFINE_DA_EVENT(xfs_da_unlink_forward); | ||
1531 | DEFINE_DA_EVENT(xfs_da_root_split); | ||
1532 | DEFINE_DA_EVENT(xfs_da_root_join); | ||
1533 | DEFINE_DA_EVENT(xfs_da_node_add); | ||
1534 | DEFINE_DA_EVENT(xfs_da_node_create); | ||
1535 | DEFINE_DA_EVENT(xfs_da_node_split); | ||
1536 | DEFINE_DA_EVENT(xfs_da_node_remove); | ||
1537 | DEFINE_DA_EVENT(xfs_da_node_rebalance); | ||
1538 | DEFINE_DA_EVENT(xfs_da_node_unbalance); | ||
1539 | DEFINE_DA_EVENT(xfs_da_swap_lastblock); | ||
1540 | DEFINE_DA_EVENT(xfs_da_grow_inode); | ||
1541 | DEFINE_DA_EVENT(xfs_da_shrink_inode); | ||
1542 | |||
1475 | DECLARE_EVENT_CLASS(xfs_dir2_space_class, | 1543 | DECLARE_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), |