diff options
author | Christoph Hellwig <hch@infradead.org> | 2011-12-18 21:00:10 +0100 |
---|---|---|
committer | Ben Myers <bpm@sgi.com> | 2012-01-17 22:07:54 +0100 |
commit | f392e6319a4e9a028b0c8b48f000bb01d660ad53 (patch) | |
tree | 6cf97bebb841da303056b60da087e76cc087af9b /fs/xfs/xfs_inode_item.c | |
parent | xfs: replace i_flock with a sleeping bitlock (diff) | |
download | linux-f392e6319a4e9a028b0c8b48f000bb01d660ad53.tar.xz linux-f392e6319a4e9a028b0c8b48f000bb01d660ad53.zip |
xfs: replace i_pin_wait with a bit waitqueue
Replace i_pin_wait, which is only used during synchronous inode flushing
with a bit waitqueue. This trades off a much smaller inode against
slightly slower wakeup performance, and saves 12 (32-bit) or 20 (64-bit)
bytes in the XFS inode.
Reviewed-by: Alex Elder <aelder@sgi.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Ben Myers <bpm@sgi.com>
Diffstat (limited to 'fs/xfs/xfs_inode_item.c')
-rw-r--r-- | fs/xfs/xfs_inode_item.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/xfs/xfs_inode_item.c b/fs/xfs/xfs_inode_item.c index c8d4ce0efd5a..91d71dcd4852 100644 --- a/fs/xfs/xfs_inode_item.c +++ b/fs/xfs/xfs_inode_item.c @@ -555,7 +555,7 @@ xfs_inode_item_unpin( trace_xfs_inode_unpin(ip, _RET_IP_); ASSERT(atomic_read(&ip->i_pincount) > 0); if (atomic_dec_and_test(&ip->i_pincount)) - wake_up(&ip->i_ipin_wait); + wake_up_bit(&ip->i_flags, __XFS_IPINNED_BIT); } /* |