diff options
author | Christoph Hellwig <hch@infradead.org> | 2011-08-23 04:28:13 -0400 |
---|---|---|
committer | Alex Elder <aelder@sgi.com> | 2011-10-11 22:15:01 -0400 |
commit | 4a06fd262dbeb70a2c315f7259e063efa493fe3d (patch) | |
tree | cca4aee6c419a8b3dc267176bb43d93048593919 /fs/xfs/xfs_vnodeops.c | |
parent | 2b3ffd7eb7b4392e3657c5046b055ca9f1f7cf5e (diff) |
xfs: remove i_iocount
We now have an i_dio_count filed and surrounding infrastructure to wait
for direct I/O completion instead of i_icount, and we have never needed
to iocount waits for buffered I/O given that we only set the page uptodate
after finishing all required work. Thus remove i_iocount, and replace
the actually needed waits with calls to inode_dio_wait.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Alex Elder <aelder@sgi.com>
Diffstat (limited to 'fs/xfs/xfs_vnodeops.c')
-rw-r--r-- | fs/xfs/xfs_vnodeops.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/fs/xfs/xfs_vnodeops.c b/fs/xfs/xfs_vnodeops.c index 51fc429527bc..c2ff0fc86567 100644 --- a/fs/xfs/xfs_vnodeops.c +++ b/fs/xfs/xfs_vnodeops.c | |||
@@ -647,8 +647,6 @@ xfs_inactive( | |||
647 | if (truncate) { | 647 | if (truncate) { |
648 | xfs_ilock(ip, XFS_IOLOCK_EXCL); | 648 | xfs_ilock(ip, XFS_IOLOCK_EXCL); |
649 | 649 | ||
650 | xfs_ioend_wait(ip); | ||
651 | |||
652 | error = xfs_trans_reserve(tp, 0, | 650 | error = xfs_trans_reserve(tp, 0, |
653 | XFS_ITRUNCATE_LOG_RES(mp), | 651 | XFS_ITRUNCATE_LOG_RES(mp), |
654 | 0, XFS_TRANS_PERM_LOG_RES, | 652 | 0, XFS_TRANS_PERM_LOG_RES, |
@@ -2076,7 +2074,7 @@ xfs_free_file_space( | |||
2076 | if (need_iolock) { | 2074 | if (need_iolock) { |
2077 | xfs_ilock(ip, XFS_IOLOCK_EXCL); | 2075 | xfs_ilock(ip, XFS_IOLOCK_EXCL); |
2078 | /* wait for the completion of any pending DIOs */ | 2076 | /* wait for the completion of any pending DIOs */ |
2079 | xfs_ioend_wait(ip); | 2077 | inode_dio_wait(VFS_I(ip)); |
2080 | } | 2078 | } |
2081 | 2079 | ||
2082 | rounding = max_t(uint, 1 << mp->m_sb.sb_blocklog, PAGE_CACHE_SIZE); | 2080 | rounding = max_t(uint, 1 << mp->m_sb.sb_blocklog, PAGE_CACHE_SIZE); |