summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@infradead.org>2014-02-10 10:28:04 +1100
committerDave Chinner <david@fromorbit.com>2014-02-10 10:28:04 +1100
commit9862f62faba8c279ac07415a6f610041116fbdc0 (patch)
tree94af488994406dc3de4e640fe52e8efb6825bbc2 /fs
parentd531d91d69902e55633ed834f531aa0b48d618cc (diff)
downloadlinux-0-day-9862f62faba8c279ac07415a6f610041116fbdc0.tar.gz
linux-0-day-9862f62faba8c279ac07415a6f610041116fbdc0.tar.xz
xfs: allow appending aio writes
XFS can easily support appending aio writes by ensuring we always allocate blocks as unwritten extents when performing direct I/O writes and only converting them to written extents at I/O completion. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Dave Chinner <dchinner@redhat.com> Signed-off-by: Dave Chinner <david@fromorbit.com>
Diffstat (limited to 'fs')
-rw-r--r--fs/xfs/xfs_aops.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/xfs/xfs_aops.c b/fs/xfs/xfs_aops.c
index db2cfb067d0b1..ef62c6b6130ad 100644
--- a/fs/xfs/xfs_aops.c
+++ b/fs/xfs/xfs_aops.c
@@ -1441,7 +1441,8 @@ xfs_vm_direct_IO(
ret = __blockdev_direct_IO(rw, iocb, inode, bdev, iov,
offset, nr_segs,
xfs_get_blocks_direct,
- xfs_end_io_direct_write, NULL, 0);
+ xfs_end_io_direct_write, NULL,
+ DIO_ASYNC_EXTEND);
if (ret != -EIOCBQUEUED && iocb->private)
goto out_destroy_ioend;
} else {