• Home
  • Raw
  • Download

Lines Matching refs:iocb

746 static ssize_t gfs2_file_direct_read(struct kiocb *iocb, struct iov_iter *to)  in gfs2_file_direct_read()  argument
748 struct file *file = iocb->ki_filp; in gfs2_file_direct_read()
762 ret = iomap_dio_rw(iocb, to, &gfs2_iomap_ops, NULL); in gfs2_file_direct_read()
770 static ssize_t gfs2_file_direct_write(struct kiocb *iocb, struct iov_iter *from) in gfs2_file_direct_write() argument
772 struct file *file = iocb->ki_filp; in gfs2_file_direct_write()
776 loff_t offset = iocb->ki_pos; in gfs2_file_direct_write()
797 ret = iomap_dio_rw(iocb, from, &gfs2_iomap_ops, NULL); in gfs2_file_direct_write()
806 static ssize_t gfs2_file_read_iter(struct kiocb *iocb, struct iov_iter *to) in gfs2_file_read_iter() argument
810 if (iocb->ki_flags & IOCB_DIRECT) { in gfs2_file_read_iter()
811 ret = gfs2_file_direct_read(iocb, to); in gfs2_file_read_iter()
814 iocb->ki_flags &= ~IOCB_DIRECT; in gfs2_file_read_iter()
816 return generic_file_read_iter(iocb, to); in gfs2_file_read_iter()
831 static ssize_t gfs2_file_write_iter(struct kiocb *iocb, struct iov_iter *from) in gfs2_file_write_iter() argument
833 struct file *file = iocb->ki_filp; in gfs2_file_write_iter()
842 gfs2_size_hint(file, iocb->ki_pos, iov_iter_count(from)); in gfs2_file_write_iter()
844 if (iocb->ki_flags & IOCB_APPEND) { in gfs2_file_write_iter()
854 ret = generic_write_checks(iocb, from); in gfs2_file_write_iter()
869 if (iocb->ki_flags & IOCB_DIRECT) { in gfs2_file_write_iter()
874 written = gfs2_file_direct_write(iocb, from); in gfs2_file_write_iter()
878 ret = iomap_file_buffered_write(iocb, from, &gfs2_iomap_ops); in gfs2_file_write_iter()
888 pos = iocb->ki_pos; in gfs2_file_write_iter()
892 iocb->ki_pos += buffered; in gfs2_file_write_iter()
904 ret = iomap_file_buffered_write(iocb, from, &gfs2_iomap_ops); in gfs2_file_write_iter()
906 iocb->ki_pos += ret; in gfs2_file_write_iter()
915 ret = generic_write_sync(iocb, ret); in gfs2_file_write_iter()