xfs: wait for I/O completion when writing out pages in xfs_setattr_size
authorChristoph Hellwig <hch@infradead.org>
Tue, 23 Aug 2011 08:28:12 +0000 (08:28 +0000)
committerAlex Elder <aelder@sgi.com>
Wed, 12 Oct 2011 02:15:00 +0000 (21:15 -0500)
The current code relies on the xfs_ioend_wait call later on to make sure
all I/O actually has completed.  The xfs_ioend_wait call will go away soon,
so prepare for that by using the waiting filemap function.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Alex Elder <aelder@sgi.com>
fs/xfs/xfs_iops.c

index 673704fab7489c8f657063dae73fb04ea4a50138..32aca87bde5ef1a50396d00f92038dd7081c9c84 100644 (file)
@@ -833,8 +833,8 @@ xfs_setattr_size(
         * care about here.
         */
        if (ip->i_size != ip->i_d.di_size && iattr->ia_size > ip->i_d.di_size) {
-               error = xfs_flush_pages(ip, ip->i_d.di_size, iattr->ia_size,
-                                       XBF_ASYNC, FI_NONE);
+               error = xfs_flush_pages(ip, ip->i_d.di_size, iattr->ia_size, 0,
+                                       FI_NONE);
                if (error)
                        goto out_unlock;
        }