Lines Matching refs:iocb
33 static ssize_t ext2_dax_read_iter(struct kiocb *iocb, struct iov_iter *to) in ext2_dax_read_iter() argument
35 struct inode *inode = iocb->ki_filp->f_mapping->host; in ext2_dax_read_iter()
42 ret = dax_iomap_rw(iocb, to, &ext2_iomap_ops); in ext2_dax_read_iter()
45 file_accessed(iocb->ki_filp); in ext2_dax_read_iter()
49 static ssize_t ext2_dax_write_iter(struct kiocb *iocb, struct iov_iter *from) in ext2_dax_write_iter() argument
51 struct file *file = iocb->ki_filp; in ext2_dax_write_iter()
56 ret = generic_write_checks(iocb, from); in ext2_dax_write_iter()
66 ret = dax_iomap_rw(iocb, from, &ext2_iomap_ops); in ext2_dax_write_iter()
67 if (ret > 0 && iocb->ki_pos > i_size_read(inode)) { in ext2_dax_write_iter()
68 i_size_write(inode, iocb->ki_pos); in ext2_dax_write_iter()
75 ret = generic_write_sync(iocb, ret); in ext2_dax_write_iter()
164 static ssize_t ext2_file_read_iter(struct kiocb *iocb, struct iov_iter *to) in ext2_file_read_iter() argument
167 if (IS_DAX(iocb->ki_filp->f_mapping->host)) in ext2_file_read_iter()
168 return ext2_dax_read_iter(iocb, to); in ext2_file_read_iter()
170 return generic_file_read_iter(iocb, to); in ext2_file_read_iter()
173 static ssize_t ext2_file_write_iter(struct kiocb *iocb, struct iov_iter *from) in ext2_file_write_iter() argument
176 if (IS_DAX(iocb->ki_filp->f_mapping->host)) in ext2_file_write_iter()
177 return ext2_dax_write_iter(iocb, from); in ext2_file_write_iter()
179 return generic_file_write_iter(iocb, from); in ext2_file_write_iter()