move vn_iowait / vn_iowake into xfs_aops.c

The whole machinery to wait on I/O completion is related to the I/O path
and should be there instead of in xfs_vnode.c.  Also give the functions
more descriptive names.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Dave Chinner <david@fromorbit.com>
Signed-off-by: Niv Sardi <xaiki@sgi.com>
This commit is contained in:
Christoph Hellwig
2008-12-03 12:20:39 +01:00
committed by Niv Sardi
parent 583fa586f0
commit 25e41b3d52
8 changed files with 48 additions and 54 deletions
+3 -3
View File
@@ -1322,8 +1322,8 @@ xfs_itrunc_trace(
* direct I/O with the truncate operation. Also, because we hold
* the IOLOCK in exclusive mode, we prevent new direct I/Os from being
* started until the truncate completes and drops the lock. Essentially,
* the vn_iowait() call forms an I/O barrier that provides strict ordering
* between direct I/Os and the truncate operation.
* the xfs_ioend_wait() call forms an I/O barrier that provides strict
* ordering between direct I/Os and the truncate operation.
*
* The flags parameter can have either the value XFS_ITRUNC_DEFINITE
* or XFS_ITRUNC_MAYBE. The XFS_ITRUNC_MAYBE value should be used
@@ -1354,7 +1354,7 @@ xfs_itruncate_start(
/* wait for the completion of any pending DIOs */
if (new_size == 0 || new_size < ip->i_size)
vn_iowait(ip);
xfs_ioend_wait(ip);
/*
* Call toss_pages or flushinval_pages to get rid of pages