diff options
Diffstat (limited to 'fs/udf/inode.c')
-rw-r--r-- | fs/udf/inode.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/fs/udf/inode.c b/fs/udf/inode.c index 9e3d780e5eff..6afac3d561ac 100644 --- a/fs/udf/inode.c +++ b/fs/udf/inode.c | |||
@@ -214,8 +214,7 @@ static int udf_write_begin(struct file *file, struct address_space *mapping, | |||
214 | return ret; | 214 | return ret; |
215 | } | 215 | } |
216 | 216 | ||
217 | static ssize_t udf_direct_IO(int rw, struct kiocb *iocb, | 217 | static ssize_t udf_direct_IO(struct kiocb *iocb, struct iov_iter *iter, |
218 | struct iov_iter *iter, | ||
219 | loff_t offset) | 218 | loff_t offset) |
220 | { | 219 | { |
221 | struct file *file = iocb->ki_filp; | 220 | struct file *file = iocb->ki_filp; |
@@ -224,8 +223,8 @@ static ssize_t udf_direct_IO(int rw, struct kiocb *iocb, | |||
224 | size_t count = iov_iter_count(iter); | 223 | size_t count = iov_iter_count(iter); |
225 | ssize_t ret; | 224 | ssize_t ret; |
226 | 225 | ||
227 | ret = blockdev_direct_IO(rw, iocb, inode, iter, offset, udf_get_block); | 226 | ret = blockdev_direct_IO(iocb, inode, iter, offset, udf_get_block); |
228 | if (unlikely(ret < 0 && (rw & WRITE))) | 227 | if (unlikely(ret < 0 && iov_iter_rw(iter) == WRITE)) |
229 | udf_write_failed(mapping, offset + count); | 228 | udf_write_failed(mapping, offset + count); |
230 | return ret; | 229 | return ret; |
231 | } | 230 | } |