aboutsummaryrefslogtreecommitdiffstats
path: root/fs/xfs
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2014-03-03 22:03:20 -0500
committerAl Viro <viro@zeniv.linux.org.uk>2014-05-06 17:32:42 -0400
commitf8579f8673b7ecdb7a81d5d5bb1d981093d9aa94 (patch)
treed4287d0dffbf3758e709238302fb8865cdd66651 /fs/xfs
parente7c24607b5d68a4cdc56e09d70a3c8bae5f0519f (diff)
generic_file_direct_write(): switch to iov_iter
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/xfs')
-rw-r--r--fs/xfs/xfs_file.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/xfs/xfs_file.c b/fs/xfs/xfs_file.c
index 951a2321ee01..8617497867c7 100644
--- a/fs/xfs/xfs_file.c
+++ b/fs/xfs/xfs_file.c
@@ -641,6 +641,7 @@ xfs_file_dio_aio_write(
641 int iolock; 641 int iolock;
642 struct xfs_buftarg *target = XFS_IS_REALTIME_INODE(ip) ? 642 struct xfs_buftarg *target = XFS_IS_REALTIME_INODE(ip) ?
643 mp->m_rtdev_targp : mp->m_ddev_targp; 643 mp->m_rtdev_targp : mp->m_ddev_targp;
644 struct iov_iter from;
644 645
645 /* DIO must be aligned to device logical sector size */ 646 /* DIO must be aligned to device logical sector size */
646 if ((pos | count) & target->bt_logical_sectormask) 647 if ((pos | count) & target->bt_logical_sectormask)
@@ -698,8 +699,8 @@ xfs_file_dio_aio_write(
698 } 699 }
699 700
700 trace_xfs_file_direct_write(ip, count, iocb->ki_pos, 0); 701 trace_xfs_file_direct_write(ip, count, iocb->ki_pos, 0);
701 ret = generic_file_direct_write(iocb, iovp, 702 iov_iter_init(&from, iovp, nr_segs, count, 0);
702 &nr_segs, pos, count, ocount); 703 ret = generic_file_direct_write(iocb, &from, pos, count, ocount);
703 704
704out: 705out:
705 xfs_rw_iunlock(ip, iolock); 706 xfs_rw_iunlock(ip, iolock);