Lines Matching refs:iocb
79 struct kiocb * iocb; /* controlling i/o request */ member
260 ssize_t nfs_direct_IO(struct kiocb *iocb, struct iov_iter *iter) in nfs_direct_IO() argument
262 struct inode *inode = iocb->ki_filp->f_mapping->host; in nfs_direct_IO()
271 return nfs_file_direct_read(iocb, iter); in nfs_direct_IO()
272 return nfs_file_direct_write(iocb, iter); in nfs_direct_IO()
355 if (dreq->iocb) in nfs_direct_wait()
381 if (dreq->iocb) { in nfs_direct_complete()
387 dreq->iocb->ki_complete(dreq->iocb, res, 0); in nfs_direct_complete()
552 ssize_t nfs_file_direct_read(struct kiocb *iocb, struct iov_iter *iter) in nfs_file_direct_read() argument
554 struct file *file = iocb->ki_filp; in nfs_file_direct_read()
564 file, count, (long long) iocb->ki_pos); in nfs_file_direct_read()
579 dreq->io_start = iocb->ki_pos; in nfs_file_direct_read()
580 dreq->ctx = get_nfs_open_context(nfs_file_open_context(iocb->ki_filp)); in nfs_file_direct_read()
587 if (!is_sync_kiocb(iocb)) in nfs_file_direct_read()
588 dreq->iocb = iocb; in nfs_file_direct_read()
593 requested = nfs_direct_read_schedule_iovec(dreq, iter, iocb->ki_pos); in nfs_file_direct_read()
601 iocb->ki_pos += result; in nfs_file_direct_read()
966 ssize_t nfs_file_direct_write(struct kiocb *iocb, struct iov_iter *iter) in nfs_file_direct_write() argument
970 struct file *file = iocb->ki_filp; in nfs_file_direct_write()
978 file, iov_iter_count(iter), (long long) iocb->ki_pos); in nfs_file_direct_write()
980 result = generic_write_checks(iocb, iter); in nfs_file_direct_write()
986 pos = iocb->ki_pos; in nfs_file_direct_write()
999 dreq->ctx = get_nfs_open_context(nfs_file_open_context(iocb->ki_filp)); in nfs_file_direct_write()
1006 if (!is_sync_kiocb(iocb)) in nfs_file_direct_write()
1007 dreq->iocb = iocb; in nfs_file_direct_write()
1024 iocb->ki_pos = pos + result; in nfs_file_direct_write()
1026 generic_write_sync(iocb, result); in nfs_file_direct_write()