diff options
Diffstat (limited to 'fs/btrfs/inode.c')
-rw-r--r-- | fs/btrfs/inode.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 811576346a92..9b774a0c9ca6 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c | |||
@@ -8129,7 +8129,7 @@ static ssize_t btrfs_direct_IO(struct kiocb *iocb, struct iov_iter *iter, | |||
8129 | if (check_direct_IO(BTRFS_I(inode)->root, iocb, iter, offset)) | 8129 | if (check_direct_IO(BTRFS_I(inode)->root, iocb, iter, offset)) |
8130 | return 0; | 8130 | return 0; |
8131 | 8131 | ||
8132 | atomic_inc(&inode->i_dio_count); | 8132 | inode_dio_begin(inode); |
8133 | smp_mb__after_atomic(); | 8133 | smp_mb__after_atomic(); |
8134 | 8134 | ||
8135 | /* | 8135 | /* |
@@ -8169,7 +8169,7 @@ static ssize_t btrfs_direct_IO(struct kiocb *iocb, struct iov_iter *iter, | |||
8169 | current->journal_info = &outstanding_extents; | 8169 | current->journal_info = &outstanding_extents; |
8170 | } else if (test_bit(BTRFS_INODE_READDIO_NEED_LOCK, | 8170 | } else if (test_bit(BTRFS_INODE_READDIO_NEED_LOCK, |
8171 | &BTRFS_I(inode)->runtime_flags)) { | 8171 | &BTRFS_I(inode)->runtime_flags)) { |
8172 | inode_dio_done(inode); | 8172 | inode_dio_end(inode); |
8173 | flags = DIO_LOCKING | DIO_SKIP_HOLES; | 8173 | flags = DIO_LOCKING | DIO_SKIP_HOLES; |
8174 | wakeup = false; | 8174 | wakeup = false; |
8175 | } | 8175 | } |
@@ -8188,7 +8188,7 @@ static ssize_t btrfs_direct_IO(struct kiocb *iocb, struct iov_iter *iter, | |||
8188 | } | 8188 | } |
8189 | out: | 8189 | out: |
8190 | if (wakeup) | 8190 | if (wakeup) |
8191 | inode_dio_done(inode); | 8191 | inode_dio_end(inode); |
8192 | if (relock) | 8192 | if (relock) |
8193 | mutex_lock(&inode->i_mutex); | 8193 | mutex_lock(&inode->i_mutex); |
8194 | 8194 | ||