xfs
[Top] [All Lists]

[PATCH 1/2] xfs: tracepoints for xfs_iunlink() and xfs_iunlink_remove()

To: xfs@xxxxxxxxxxx
Subject: [PATCH 1/2] xfs: tracepoints for xfs_iunlink() and xfs_iunlink_remove()
From: Brian Foster <bfoster@xxxxxxxxxx>
Date: Thu, 25 Apr 2013 11:41:29 -0400
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <1366904490-46821-1-git-send-email-bfoster@xxxxxxxxxx>
References: <1366904490-46821-1-git-send-email-bfoster@xxxxxxxxxx>
Add tracepoints for xfs_iunlink() and xfs_iunlink_remove(). These
tracepoints are useful for debugging inode link (and unlinked list
issues).

Signed-off-by: Brian Foster <bfoster@xxxxxxxxxx>
---
 fs/xfs/xfs_inode.c |    4 ++++
 fs/xfs/xfs_trace.h |    2 ++
 2 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/fs/xfs/xfs_inode.c b/fs/xfs/xfs_inode.c
index 4f20165..c22f980 100644
--- a/fs/xfs/xfs_inode.c
+++ b/fs/xfs/xfs_inode.c
@@ -1519,6 +1519,8 @@ xfs_iunlink(
 
        mp = tp->t_mountp;
 
+       trace_xfs_iunlink(ip);
+
        /*
         * Get the agi buffer first.  It ensures lock ordering
         * on the list.
@@ -1598,6 +1600,8 @@ xfs_iunlink_remove(
        mp = tp->t_mountp;
        agno = XFS_INO_TO_AGNO(mp, ip->i_ino);
 
+       trace_xfs_iunlink_remove(ip);
+
        /*
         * Get the agi buffer first.  It ensures lock ordering
         * on the list.
diff --git a/fs/xfs/xfs_trace.h b/fs/xfs/xfs_trace.h
index aa4db33..43bd572 100644
--- a/fs/xfs/xfs_trace.h
+++ b/fs/xfs/xfs_trace.h
@@ -586,6 +586,8 @@ DEFINE_INODE_EVENT(xfs_file_fsync);
 DEFINE_INODE_EVENT(xfs_destroy_inode);
 DEFINE_INODE_EVENT(xfs_evict_inode);
 DEFINE_INODE_EVENT(xfs_update_time);
+DEFINE_INODE_EVENT(xfs_iunlink);
+DEFINE_INODE_EVENT(xfs_iunlink_remove);
 
 DEFINE_INODE_EVENT(xfs_dquot_dqalloc);
 DEFINE_INODE_EVENT(xfs_dquot_dqdetach);
-- 
1.7.7.6

<Prev in Thread] Current Thread [Next in Thread>