aboutsummaryrefslogtreecommitdiffstats
path: root/fs/btrfs/inode.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/btrfs/inode.c')
-rw-r--r--fs/btrfs/inode.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
index 5f805bc944fa..30a6cc51f32c 100644
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -7433,8 +7433,7 @@ out:
7433} 7433}
7434 7434
7435static ssize_t btrfs_direct_IO(int rw, struct kiocb *iocb, 7435static ssize_t btrfs_direct_IO(int rw, struct kiocb *iocb,
7436 const struct iovec *iov, loff_t offset, 7436 struct iov_iter *iter, loff_t offset)
7437 unsigned long nr_segs)
7438{ 7437{
7439 struct file *file = iocb->ki_filp; 7438 struct file *file = iocb->ki_filp;
7440 struct inode *inode = file->f_mapping->host; 7439 struct inode *inode = file->f_mapping->host;
@@ -7444,8 +7443,8 @@ static ssize_t btrfs_direct_IO(int rw, struct kiocb *iocb,
7444 bool relock = false; 7443 bool relock = false;
7445 ssize_t ret; 7444 ssize_t ret;
7446 7445
7447 if (check_direct_IO(BTRFS_I(inode)->root, rw, iocb, iov, 7446 if (check_direct_IO(BTRFS_I(inode)->root, rw, iocb, iter->iov,
7448 offset, nr_segs)) 7447 offset, iter->nr_segs))
7449 return 0; 7448 return 0;
7450 7449
7451 atomic_inc(&inode->i_dio_count); 7450 atomic_inc(&inode->i_dio_count);
@@ -7457,7 +7456,7 @@ static ssize_t btrfs_direct_IO(int rw, struct kiocb *iocb,
7457 * we need to flush the dirty pages again to make absolutely sure 7456 * we need to flush the dirty pages again to make absolutely sure
7458 * that any outstanding dirty pages are on disk. 7457 * that any outstanding dirty pages are on disk.
7459 */ 7458 */
7460 count = iov_length(iov, nr_segs); 7459 count = iov_length(iter->iov, iter->nr_segs);
7461 if (test_bit(BTRFS_INODE_HAS_ASYNC_EXTENT, 7460 if (test_bit(BTRFS_INODE_HAS_ASYNC_EXTENT,
7462 &BTRFS_I(inode)->runtime_flags)) 7461 &BTRFS_I(inode)->runtime_flags))
7463 filemap_fdatawrite_range(inode->i_mapping, offset, count); 7462 filemap_fdatawrite_range(inode->i_mapping, offset, count);
@@ -7484,7 +7483,8 @@ static ssize_t btrfs_direct_IO(int rw, struct kiocb *iocb,
7484 7483
7485 ret = __blockdev_direct_IO(rw, iocb, inode, 7484 ret = __blockdev_direct_IO(rw, iocb, inode,
7486 BTRFS_I(inode)->root->fs_info->fs_devices->latest_bdev, 7485 BTRFS_I(inode)->root->fs_info->fs_devices->latest_bdev,
7487 iov, offset, nr_segs, btrfs_get_blocks_direct, NULL, 7486 iter->iov, offset, iter->nr_segs,
7487 btrfs_get_blocks_direct, NULL,
7488 btrfs_submit_direct, flags); 7488 btrfs_submit_direct, flags);
7489 if (rw & WRITE) { 7489 if (rw & WRITE) {
7490 if (ret < 0 && ret != -EIOCBQUEUED) 7490 if (ret < 0 && ret != -EIOCBQUEUED)