Lines Matching refs:iocb

35 	struct kiocb		*iocb;  member
71 struct kiocb *iocb = dio->iocb; in iomap_dio_submit_bio() local
76 if ((iocb->ki_flags & IOCB_HIPRI) && !is_sync_kiocb(iocb)) { in iomap_dio_submit_bio()
77 bio_set_polled(bio, iocb); in iomap_dio_submit_bio()
78 WRITE_ONCE(iocb->private, bio); in iomap_dio_submit_bio()
92 struct kiocb *iocb = dio->iocb; in iomap_dio_complete() local
93 loff_t offset = iocb->ki_pos; in iomap_dio_complete()
97 ret = dops->end_io(iocb, dio->size, ret, dio->flags); in iomap_dio_complete()
121 kiocb_invalidate_post_direct_write(iocb, dio->size); in iomap_dio_complete()
123 inode_dio_end(file_inode(iocb->ki_filp)); in iomap_dio_complete()
126 iocb->ki_pos += ret; in iomap_dio_complete()
133 ret = generic_write_sync(iocb, ret); in iomap_dio_complete()
137 trace_iomap_dio_complete(iocb, dio->error, ret); in iomap_dio_complete()
151 struct kiocb *iocb = dio->iocb; in iomap_dio_complete_work() local
153 iocb->ki_complete(iocb, iomap_dio_complete(dio)); in iomap_dio_complete_work()
171 struct kiocb *iocb = dio->iocb; in iomap_dio_done() local
183 WRITE_ONCE(iocb->private, NULL); in iomap_dio_done()
192 iocb->private = dio; in iomap_dio_done()
193 iocb->dio_complete = iomap_dio_deferred_complete; in iomap_dio_done()
207 iocb->ki_complete(iocb, 0); in iomap_dio_done()
209 struct inode *inode = file_inode(iocb->ki_filp); in iomap_dio_done()
260 if (!dio->iocb->ki_filp->f_mapping->nrpages) { in iomap_finish_ioend_direct()
286 struct inode *inode = file_inode(dio->iocb->ki_filp); in iomap_dio_zero()
408 dio->iocb->ki_flags &= ~IOCB_HIPRI; in iomap_dio_bio_iter()
433 bio->bi_ioprio = dio->iocb->ki_ioprio; in iomap_dio_bio_iter()
475 dio->iocb->ki_flags &= ~IOCB_HIPRI; in iomap_dio_bio_iter()
568 dio->iocb->ki_filp, current->comm); in iomap_dio_iter()
597 __iomap_dio_rw(struct kiocb *iocb, struct iov_iter *iter, in __iomap_dio_rw() argument
601 struct inode *inode = file_inode(iocb->ki_filp); in __iomap_dio_rw()
604 .pos = iocb->ki_pos, in __iomap_dio_rw()
610 is_sync_kiocb(iocb) || (dio_flags & IOMAP_DIO_FORCE_WAIT); in __iomap_dio_rw()
615 trace_iomap_dio_rw_begin(iocb, iter, dio_flags, done_before); in __iomap_dio_rw()
624 dio->iocb = iocb; in __iomap_dio_rw()
636 if (iocb->ki_flags & IOCB_NOWAIT) in __iomap_dio_rw()
649 ret = kiocb_write_and_wait(iocb, iomi.len); in __iomap_dio_rw()
662 if (iocb->ki_flags & IOCB_DIO_CALLER_COMP) in __iomap_dio_rw()
673 if (iocb->ki_flags & IOCB_ATOMIC) in __iomap_dio_rw()
677 if (iocb_is_dsync(iocb)) { in __iomap_dio_rw()
689 if (!(iocb->ki_flags & IOCB_SYNC)) in __iomap_dio_rw()
698 ret = kiocb_invalidate_pages(iocb, iomi.len); in __iomap_dio_rw()
703 if (iocb->ki_flags & IOCB_ATOMIC) { in __iomap_dio_rw()
734 iocb->ki_flags &= ~IOCB_HIPRI; in __iomap_dio_rw()
748 if (!(iocb->ki_flags & IOCB_NOWAIT)) in __iomap_dio_rw()
812 iomap_dio_rw(struct kiocb *iocb, struct iov_iter *iter, in iomap_dio_rw() argument
818 dio = __iomap_dio_rw(iocb, iter, ops, dops, dio_flags, private, in iomap_dio_rw()