xfs: trace timestamp limits
Add a couple of tracepoints so that we can check the timestamp limits being set on inodes and quotas. Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Allison Collins <allison.henderson@oracle.com> Reviewed-by: Gao Xiang <hsiangkao@redhat.com> Reviewed-by: Dave Chinner <dchinner@redhat.com>
This commit is contained in:
@@ -670,6 +670,8 @@ xfs_qm_init_quotainfo(
|
|||||||
qinf->qi_expiry_min = XFS_DQ_LEGACY_EXPIRY_MIN;
|
qinf->qi_expiry_min = XFS_DQ_LEGACY_EXPIRY_MIN;
|
||||||
qinf->qi_expiry_max = XFS_DQ_LEGACY_EXPIRY_MAX;
|
qinf->qi_expiry_max = XFS_DQ_LEGACY_EXPIRY_MAX;
|
||||||
}
|
}
|
||||||
|
trace_xfs_quota_expiry_range(mp, qinf->qi_expiry_min,
|
||||||
|
qinf->qi_expiry_max);
|
||||||
|
|
||||||
mp->m_qflags |= (mp->m_sb.sb_qflags & XFS_ALL_QUOTA_CHKD);
|
mp->m_qflags |= (mp->m_sb.sb_qflags & XFS_ALL_QUOTA_CHKD);
|
||||||
|
|
||||||
|
|||||||
@@ -1491,6 +1491,7 @@ xfs_fc_fill_super(
|
|||||||
sb->s_time_min = XFS_LEGACY_TIME_MIN;
|
sb->s_time_min = XFS_LEGACY_TIME_MIN;
|
||||||
sb->s_time_max = XFS_LEGACY_TIME_MAX;
|
sb->s_time_max = XFS_LEGACY_TIME_MAX;
|
||||||
}
|
}
|
||||||
|
trace_xfs_inode_timestamp_range(mp, sb->s_time_min, sb->s_time_max);
|
||||||
sb->s_iflags |= SB_I_CGROUPWB;
|
sb->s_iflags |= SB_I_CGROUPWB;
|
||||||
|
|
||||||
set_posix_acl_flag(sb);
|
set_posix_acl_flag(sb);
|
||||||
|
|||||||
@@ -3843,6 +3843,32 @@ TRACE_EVENT(xfs_btree_bload_block,
|
|||||||
__entry->nr_records)
|
__entry->nr_records)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
DECLARE_EVENT_CLASS(xfs_timestamp_range_class,
|
||||||
|
TP_PROTO(struct xfs_mount *mp, time64_t min, time64_t max),
|
||||||
|
TP_ARGS(mp, min, max),
|
||||||
|
TP_STRUCT__entry(
|
||||||
|
__field(dev_t, dev)
|
||||||
|
__field(long long, min)
|
||||||
|
__field(long long, max)
|
||||||
|
),
|
||||||
|
TP_fast_assign(
|
||||||
|
__entry->dev = mp->m_super->s_dev;
|
||||||
|
__entry->min = min;
|
||||||
|
__entry->max = max;
|
||||||
|
),
|
||||||
|
TP_printk("dev %d:%d min %lld max %lld",
|
||||||
|
MAJOR(__entry->dev), MINOR(__entry->dev),
|
||||||
|
__entry->min,
|
||||||
|
__entry->max)
|
||||||
|
)
|
||||||
|
|
||||||
|
#define DEFINE_TIMESTAMP_RANGE_EVENT(name) \
|
||||||
|
DEFINE_EVENT(xfs_timestamp_range_class, name, \
|
||||||
|
TP_PROTO(struct xfs_mount *mp, long long min, long long max), \
|
||||||
|
TP_ARGS(mp, min, max))
|
||||||
|
DEFINE_TIMESTAMP_RANGE_EVENT(xfs_inode_timestamp_range);
|
||||||
|
DEFINE_TIMESTAMP_RANGE_EVENT(xfs_quota_expiry_range);
|
||||||
|
|
||||||
#endif /* _TRACE_XFS_H */
|
#endif /* _TRACE_XFS_H */
|
||||||
|
|
||||||
#undef TRACE_INCLUDE_PATH
|
#undef TRACE_INCLUDE_PATH
|
||||||
|
|||||||
Reference in New Issue
Block a user