xfs: remove b_last_holder & associated macros
authorEric Sandeen <sandeen@redhat.com>
Fri, 10 Aug 2018 20:56:25 +0000 (13:56 -0700)
committerDarrick J. Wong <darrick.wong@oracle.com>
Sun, 12 Aug 2018 15:37:31 +0000 (08:37 -0700)
The old lock tracking infrastructure in xfs using the b_last_holder
field seems to only be useful if you can get into the system with a
debugger; it seems that the existing tracepoints would be the way to
go these days, and this old infrastructure can be removed.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
fs/xfs/xfs.h
fs/xfs/xfs_buf.c
fs/xfs/xfs_buf.h

index 583a9f539bf1726894f6692c3510fd4b3a7af38d..f6ffb4f248f78eed917481b81be7a2c504a16a24 100644 (file)
@@ -8,7 +8,6 @@
 
 #ifdef CONFIG_XFS_DEBUG
 #define DEBUG 1
-#define XFS_BUF_LOCK_TRACKING 1
 #endif
 
 #ifdef CONFIG_XFS_ASSERT_FATAL
index c641c7fa1a031f6361afa47d55d2c95bcacc3f64..e839907e8492f940b431a7f28621d4148ad9a4a1 100644 (file)
 
 static kmem_zone_t *xfs_buf_zone;
 
-#ifdef XFS_BUF_LOCK_TRACKING
-# define XB_SET_OWNER(bp)      ((bp)->b_last_holder = current->pid)
-# define XB_CLEAR_OWNER(bp)    ((bp)->b_last_holder = -1)
-# define XB_GET_OWNER(bp)      ((bp)->b_last_holder)
-#else
-# define XB_SET_OWNER(bp)      do { } while (0)
-# define XB_CLEAR_OWNER(bp)    do { } while (0)
-# define XB_GET_OWNER(bp)      do { } while (0)
-#endif
-
 #define xb_to_gfp(flags) \
        ((((flags) & XBF_READ_AHEAD) ? __GFP_NORETRY : GFP_NOFS) | __GFP_NOWARN)
 
@@ -226,7 +216,6 @@ _xfs_buf_alloc(
        INIT_LIST_HEAD(&bp->b_li_list);
        sema_init(&bp->b_sema, 0); /* held, no waiters */
        spin_lock_init(&bp->b_lock);
-       XB_SET_OWNER(bp);
        bp->b_target = target;
        bp->b_flags = flags;
 
@@ -1091,12 +1080,10 @@ xfs_buf_trylock(
        int                     locked;
 
        locked = down_trylock(&bp->b_sema) == 0;
-       if (locked) {
-               XB_SET_OWNER(bp);
+       if (locked)
                trace_xfs_buf_trylock(bp, _RET_IP_);
-       } else {
+       else
                trace_xfs_buf_trylock_fail(bp, _RET_IP_);
-       }
        return locked;
 }
 
@@ -1118,7 +1105,6 @@ xfs_buf_lock(
        if (atomic_read(&bp->b_pin_count) && (bp->b_flags & XBF_STALE))
                xfs_log_force(bp->b_target->bt_mount, 0);
        down(&bp->b_sema);
-       XB_SET_OWNER(bp);
 
        trace_xfs_buf_lock_done(bp, _RET_IP_);
 }
@@ -1129,9 +1115,7 @@ xfs_buf_unlock(
 {
        ASSERT(xfs_buf_islocked(bp));
 
-       XB_CLEAR_OWNER(bp);
        up(&bp->b_sema);
-
        trace_xfs_buf_unlock(bp, _RET_IP_);
 }
 
index f04613181ca17691bfa26a991f87e2e959a6b397..4e3171acd0f82bb3e2ad962b68119458ab99b64b 100644 (file)
@@ -198,10 +198,6 @@ typedef struct xfs_buf {
        int                     b_last_error;
 
        const struct xfs_buf_ops        *b_ops;
-
-#ifdef XFS_BUF_LOCK_TRACKING
-       int                     b_last_holder;
-#endif
 } xfs_buf_t;
 
 /* Finding and Reading Buffers */