/linux-master/fs/ocfs2/ |
H A D | aops.h | 51 #define ocfs2_iocb_is_rw_locked(iocb) \ 52 test_bit(0, (unsigned long *)&iocb->private) 53 static inline void ocfs2_iocb_set_rw_locked(struct kiocb *iocb, int level) argument 55 set_bit(0, (unsigned long *)&iocb->private); 57 set_bit(1, (unsigned long *)&iocb->private); 59 clear_bit(1, (unsigned long *)&iocb->private); 64 * iocb->private, which is going to be used for communication between 73 #define ocfs2_iocb_clear_rw_locked(iocb) \ 74 clear_bit(OCFS2_IOCB_RW_LOCK, (unsigned long *)&iocb->private) 75 #define ocfs2_iocb_rw_locked_level(iocb) \ [all...] |
/linux-master/fs/ext2/ |
H A D | file.c | 35 static ssize_t ext2_dax_read_iter(struct kiocb *iocb, struct iov_iter *to) argument 37 struct inode *inode = iocb->ki_filp->f_mapping->host; 44 ret = dax_iomap_rw(iocb, to, &ext2_iomap_ops); 47 file_accessed(iocb->ki_filp); 51 static ssize_t ext2_dax_write_iter(struct kiocb *iocb, struct iov_iter *from) argument 53 struct file *file = iocb->ki_filp; 58 ret = generic_write_checks(iocb, from); 68 ret = dax_iomap_rw(iocb, from, &ext2_iomap_ops); 69 if (ret > 0 && iocb->ki_pos > i_size_read(inode)) { 70 i_size_write(inode, iocb 166 ext2_dio_read_iter(struct kiocb *iocb, struct iov_iter *to) argument 181 ext2_dio_write_end_io(struct kiocb *iocb, ssize_t size, int error, unsigned int flags) argument 212 ext2_dio_write_iter(struct kiocb *iocb, struct iov_iter *from) argument 281 ext2_file_read_iter(struct kiocb *iocb, struct iov_iter *to) argument 293 ext2_file_write_iter(struct kiocb *iocb, struct iov_iter *from) argument [all...] |
H A D | trace.h | 12 TP_PROTO(struct kiocb *iocb, struct iov_iter *iter, ssize_t ret), 13 TP_ARGS(iocb, iter, ret), 25 __entry->dev = file_inode(iocb->ki_filp)->i_sb->s_dev; 26 __entry->ino = file_inode(iocb->ki_filp)->i_ino; 27 __entry->isize = file_inode(iocb->ki_filp)->i_size; 28 __entry->pos = iocb->ki_pos; 30 __entry->ki_flags = iocb->ki_flags; 31 __entry->aio = !is_sync_kiocb(iocb); 47 TP_PROTO(struct kiocb *iocb, struct iov_iter *iter, ssize_t ret), \ 48 TP_ARGS(iocb, ite [all...] |
/linux-master/fs/netfs/ |
H A D | direct_read.c | 21 * @iocb: The I/O control descriptor describing the read 24 * Perform an unbuffered I/O or direct I/O from the file in @iocb to the 29 static ssize_t netfs_unbuffered_read_iter_locked(struct kiocb *iocb, struct iov_iter *iter) argument 34 bool async = !is_sync_kiocb(iocb); 41 ret = kiocb_write_and_wait(iocb, orig_count); 44 file_accessed(iocb->ki_filp); 46 rreq = netfs_alloc_request(iocb->ki_filp->f_mapping, iocb->ki_filp, 47 iocb->ki_pos, orig_count, 82 rreq->iocb 110 netfs_unbuffered_read_iter(struct kiocb *iocb, struct iov_iter *iter) argument [all...] |
H A D | direct_write.c | 30 static ssize_t netfs_unbuffered_write_iter_locked(struct kiocb *iocb, struct iov_iter *iter, argument 34 unsigned long long start = iocb->ki_pos; 37 bool async = !is_sync_kiocb(iocb); 49 wreq = netfs_alloc_request(iocb->ki_filp->f_mapping, iocb->ki_filp, 51 iocb->ki_flags & IOCB_DIRECT ? 88 wreq->iocb = iocb; 90 ret = netfs_begin_write(wreq, is_sync_kiocb(iocb), 91 iocb 132 netfs_unbuffered_write_iter(struct kiocb *iocb, struct iov_iter *from) argument [all...] |
/linux-master/fs/ |
H A D | backing-file.c | 56 struct kiocb iocb; member in struct:backing_aio 78 fput(aio->iocb.ki_filp); 85 struct kiocb *iocb = &aio->iocb; local 91 orig_iocb->ki_pos = iocb->ki_pos; 95 static void backing_aio_rw_complete(struct kiocb *iocb, long res) argument 97 struct backing_aio *aio = container_of(iocb, struct backing_aio, iocb); 100 if (iocb->ki_flags & IOCB_WRITE) 101 kiocb_end_write(iocb); 114 backing_aio_queue_completion(struct kiocb *iocb, long res) argument 127 backing_aio_init_wq(struct kiocb *iocb) argument 138 backing_file_read_iter(struct file *file, struct iov_iter *iter, struct kiocb *iocb, int flags, struct backing_file_ctx *ctx) argument 186 backing_file_write_iter(struct file *file, struct iov_iter *iter, struct kiocb *iocb, int flags, struct backing_file_ctx *ctx) argument [all...] |
H A D | aio.c | 171 * iocb unions! See also 'struct kiocb' in <linux/fs.h> 192 * NOTE! Each of the iocb union members has the file pointer 215 * If the aio_resfd field of the userspace iocb is not zero, 590 void kiocb_set_cancel_fn(struct kiocb *iocb, kiocb_cancel_fn *cancel) argument 600 if (!(iocb->ki_flags & IOCB_AIO_RW)) 603 req = container_of(iocb, struct aio_kiocb, rw); 1109 static inline void iocb_destroy(struct aio_kiocb *iocb) argument 1111 if (iocb->ki_eventfd) 1112 eventfd_ctx_put(iocb->ki_eventfd); 1113 if (iocb 1127 aio_complete(struct aio_kiocb *iocb) argument 1212 iocb_put(struct aio_kiocb *iocb) argument 1487 aio_remove_iocb(struct aio_kiocb *iocb) argument 1499 struct aio_kiocb *iocb = container_of(kiocb, struct aio_kiocb, rw); local 1516 aio_prep_rw(struct kiocb *req, const struct iocb *iocb) argument 1550 aio_setup_rw(int rw, const struct iocb *iocb, struct iovec **iovec, bool vectored, bool compat, struct iov_iter *iter) argument 1586 aio_read(struct kiocb *req, const struct iocb *iocb, bool vectored, bool compat) argument 1613 aio_write(struct kiocb *req, const struct iocb *iocb, bool vectored, bool compat) argument 1647 struct aio_kiocb *iocb = container_of(work, struct aio_kiocb, fsync.work); local 1656 aio_fsync(struct fsync_iocb *req, const struct iocb *iocb, bool datasync) argument 1679 struct aio_kiocb *iocb = container_of(req, struct aio_kiocb, poll); local 1732 struct aio_kiocb *iocb = container_of(req, struct aio_kiocb, poll); local 1775 aio_poll_cancel(struct kiocb *iocb) argument 1796 struct aio_kiocb *iocb = container_of(req, struct aio_kiocb, poll); local 1876 struct aio_kiocb *iocb; member in struct:aio_poll_table 1899 aio_poll(struct aio_kiocb *aiocb, const struct iocb *iocb) argument 1974 __io_submit_one(struct kioctx *ctx, const struct iocb *iocb, struct iocb __user *user_iocb, struct aio_kiocb *req, bool compat) argument 2032 struct iocb iocb; local [all...] |
/linux-master/fs/xfs/ |
H A D | xfs_file.c | 202 struct kiocb *iocb, 205 struct xfs_inode *ip = XFS_I(file_inode(iocb->ki_filp)); 207 if (iocb->ki_flags & IOCB_NOWAIT) { 219 struct kiocb *iocb, 223 struct xfs_inode *ip = XFS_I(file_inode(iocb->ki_filp)); 225 ret = xfs_ilock_iocb(iocb, *lock_mode); 236 return xfs_ilock_iocb(iocb, *lock_mode); 256 struct kiocb *iocb, 259 struct xfs_inode *ip = XFS_I(file_inode(iocb->ki_filp)); 262 trace_xfs_file_direct_read(iocb, t 201 xfs_ilock_iocb( struct kiocb *iocb, unsigned int lock_mode) argument 218 xfs_ilock_iocb_for_write( struct kiocb *iocb, unsigned int *lock_mode) argument 255 xfs_file_dio_read( struct kiocb *iocb, struct iov_iter *to) argument 279 xfs_file_dax_read( struct kiocb *iocb, struct iov_iter *to) argument 302 xfs_file_buffered_read( struct kiocb *iocb, struct iov_iter *to) argument 321 xfs_file_read_iter( struct kiocb *iocb, struct iov_iter *to) argument 382 xfs_file_write_checks( struct kiocb *iocb, struct iov_iter *from, unsigned int *iolock) argument 489 xfs_dio_write_end_io( struct kiocb *iocb, ssize_t size, int error, unsigned flags) argument 583 xfs_file_dio_write_aligned( struct xfs_inode *ip, struct kiocb *iocb, struct iov_iter *from) argument 634 xfs_file_dio_write_unaligned( struct xfs_inode *ip, struct kiocb *iocb, struct iov_iter *from) argument 707 xfs_file_dio_write( struct kiocb *iocb, struct iov_iter *from) argument 724 xfs_file_dax_write( struct kiocb *iocb, struct iov_iter *from) argument 765 xfs_file_buffered_write( struct kiocb *iocb, struct iov_iter *from) argument 829 xfs_file_write_iter( struct kiocb *iocb, struct iov_iter *from) argument [all...] |
/linux-master/fs/iomap/ |
H A D | direct-io.c | 31 struct kiocb *iocb; member in struct:iomap_dio 67 struct kiocb *iocb = dio->iocb; local 72 if ((iocb->ki_flags & IOCB_HIPRI) && !is_sync_kiocb(iocb)) { 73 bio_set_polled(bio, iocb); 74 WRITE_ONCE(iocb->private, bio); 86 struct kiocb *iocb = dio->iocb; local 87 loff_t offset = iocb 144 struct kiocb *iocb = dio->iocb; local 163 struct kiocb *iocb = dio->iocb; local 541 __iomap_dio_rw(struct kiocb *iocb, struct iov_iter *iter, const struct iomap_ops *ops, const struct iomap_dio_ops *dops, unsigned int dio_flags, void *private, size_t done_before) argument 743 iomap_dio_rw(struct kiocb *iocb, struct iov_iter *iter, const struct iomap_ops *ops, const struct iomap_dio_ops *dops, unsigned int dio_flags, void *private, size_t done_before) argument [all...] |
H A D | trace.h | 237 TP_PROTO(struct kiocb *iocb, struct iov_iter *iter, 239 TP_ARGS(iocb, iter, dio_flags, done_before), 252 __entry->dev = file_inode(iocb->ki_filp)->i_sb->s_dev; 253 __entry->ino = file_inode(iocb->ki_filp)->i_ino; 254 __entry->isize = file_inode(iocb->ki_filp)->i_size; 255 __entry->pos = iocb->ki_pos; 258 __entry->ki_flags = iocb->ki_flags; 260 __entry->aio = !is_sync_kiocb(iocb); 275 TP_PROTO(struct kiocb *iocb, int error, ssize_t ret), 276 TP_ARGS(iocb, erro [all...] |
/linux-master/block/ |
H A D | fops.c | 27 static blk_opf_t dio_bio_write_op(struct kiocb *iocb) argument 32 if (iocb_is_dsync(iocb)) 46 static ssize_t __blkdev_direct_IO_simple(struct kiocb *iocb, argument 49 struct block_device *bdev = I_BDEV(iocb->ki_filp->f_mapping->host); 51 loff_t pos = iocb->ki_pos; 73 bio_init(&bio, bdev, vecs, nr_pages, dio_bio_write_op(iocb)); 76 bio.bi_write_hint = file_inode(iocb->ki_filp)->i_write_hint; 77 bio.bi_ioprio = iocb->ki_ioprio; 87 if (iocb->ki_flags & IOCB_NOWAIT) 112 struct kiocb *iocb; member in union:blkdev_dio::__anon310 133 struct kiocb *iocb = dio->iocb; local 163 __blkdev_direct_IO(struct kiocb *iocb, struct iov_iter *iter, unsigned int nr_pages) argument 281 struct kiocb *iocb = dio->iocb; local 303 __blkdev_direct_IO_async(struct kiocb *iocb, struct iov_iter *iter, unsigned int nr_pages) argument 369 blkdev_direct_IO(struct kiocb *iocb, struct iov_iter *iter) argument 633 blkdev_direct_write(struct kiocb *iocb, struct iov_iter *from) argument 656 blkdev_buffered_write(struct kiocb *iocb, struct iov_iter *from) argument 668 blkdev_write_iter(struct kiocb *iocb, struct iov_iter *from) argument 717 blkdev_read_iter(struct kiocb *iocb, struct iov_iter *to) argument [all...] |
/linux-master/fs/zonefs/ |
H A D | file.c | 345 static int zonefs_file_write_dio_end_io(struct kiocb *iocb, ssize_t size, argument 348 struct inode *inode = file_inode(iocb->ki_filp); 356 if (!is_sync_kiocb(iocb)) 370 if (i_size_read(inode) < iocb->ki_pos + size) { 371 zonefs_update_stats(inode, iocb->ki_pos + size); 372 zonefs_i_size_write(inode, iocb->ki_pos + size); 413 static ssize_t zonefs_write_checks(struct kiocb *iocb, struct iov_iter *from) argument 415 struct file *file = iocb->ki_filp; 427 if ((iocb->ki_flags & IOCB_NOWAIT) && !(iocb 457 zonefs_file_dio_write(struct kiocb *iocb, struct iov_iter *from) argument 542 zonefs_file_buffered_write(struct kiocb *iocb, struct iov_iter *from) argument 578 zonefs_file_write_iter(struct kiocb *iocb, struct iov_iter *from) argument 603 zonefs_file_read_dio_end_io(struct kiocb *iocb, ssize_t size, int error, unsigned int flags) argument 618 zonefs_file_read_iter(struct kiocb *iocb, struct iov_iter *to) argument [all...] |
/linux-master/fs/ext4/ |
H A D | file.c | 55 static bool ext4_should_use_dio(struct kiocb *iocb, struct iov_iter *iter) argument 57 struct inode *inode = file_inode(iocb->ki_filp); 66 return IS_ALIGNED(iocb->ki_pos | iov_iter_alignment(iter), dio_align); 69 static ssize_t ext4_dio_read_iter(struct kiocb *iocb, struct iov_iter *to) argument 72 struct inode *inode = file_inode(iocb->ki_filp); 74 if (iocb->ki_flags & IOCB_NOWAIT) { 81 if (!ext4_should_use_dio(iocb, to)) { 90 iocb->ki_flags &= ~IOCB_DIRECT; 91 return generic_file_read_iter(iocb, to); 94 ret = iomap_dio_rw(iocb, t 102 ext4_dax_read_iter(struct kiocb *iocb, struct iov_iter *to) argument 130 ext4_file_read_iter(struct kiocb *iocb, struct iov_iter *to) argument 243 ext4_generic_write_checks(struct kiocb *iocb, struct iov_iter *from) argument 271 ext4_write_checks(struct kiocb *iocb, struct iov_iter *from) argument 285 ext4_buffered_write_iter(struct kiocb *iocb, struct iov_iter *from) argument 374 ext4_dio_write_end_io(struct kiocb *iocb, ssize_t size, int error, unsigned int flags) argument 421 ext4_dio_write_checks(struct kiocb *iocb, struct iov_iter *from, bool *ilock_shared, bool *extend, bool *unwritten, int *dio_flags) argument 498 ext4_dio_write_iter(struct kiocb *iocb, struct iov_iter *from) argument 629 ext4_dax_write_iter(struct kiocb *iocb, struct iov_iter *from) argument 684 ext4_file_write_iter(struct kiocb *iocb, struct iov_iter *from) argument [all...] |
/linux-master/fs/configfs/ |
H A D | file.c | 80 static ssize_t configfs_read_iter(struct kiocb *iocb, struct iov_iter *to) argument 82 struct file *file = iocb->ki_filp; 93 __func__, iov_iter_count(to), iocb->ki_pos, buffer->page); 94 if (iocb->ki_pos >= buffer->count) 96 retval = copy_to_iter(buffer->page + iocb->ki_pos, 97 buffer->count - iocb->ki_pos, to); 98 iocb->ki_pos += retval; 106 static ssize_t configfs_bin_read_iter(struct kiocb *iocb, struct iov_iter *to) argument 108 struct file *file = iocb->ki_filp; 168 if (iocb 220 configfs_write_iter(struct kiocb *iocb, struct iov_iter *from) argument 236 configfs_bin_write_iter(struct kiocb *iocb, struct iov_iter *from) argument [all...] |
/linux-master/fs/cachefiles/ |
H A D | io.c | 18 struct kiocb iocb; member in struct:cachefiles_kiocb 37 fput(ki->iocb.ki_filp); 45 static void cachefiles_read_complete(struct kiocb *iocb, long ret) argument 47 struct cachefiles_kiocb *ki = container_of(iocb, struct cachefiles_kiocb, iocb); 48 struct inode *inode = file_inode(ki->iocb.ki_filp); 138 ki->iocb.ki_filp = file; 139 ki->iocb.ki_pos = start_pos + skipped; 140 ki->iocb.ki_flags = IOCB_DIRECT; 141 ki->iocb 254 cachefiles_write_complete(struct kiocb *iocb, long ret) argument [all...] |
/linux-master/tools/usb/ffs-aio-example/multibuff/device_app/ |
H A D | aio_multibuff.c | 144 struct iocb **iocb; member in struct:io_buffer 212 iobuf->iocb = malloc(n*sizeof(*iobuf->iocb)); 218 iobuf->iocb[i] = malloc(sizeof(**iobuf->iocb)); 228 free(iobuf->iocb[i]); 231 free(iobuf->iocb); 332 io_prep_pwrite(iobuf[i].iocb[j], ep1, 336 iobuf[i].iocb[ [all...] |
/linux-master/drivers/gpu/drm/display/ |
H A D | drm_dp_aux_dev.c | 146 static ssize_t auxdev_read_iter(struct kiocb *iocb, struct iov_iter *to) argument 148 struct drm_dp_aux_dev *aux_dev = iocb->ki_filp->private_data; 149 loff_t pos = iocb->ki_pos; 179 if (pos != iocb->ki_pos) 180 res = pos - iocb->ki_pos; 181 iocb->ki_pos = pos; 189 static ssize_t auxdev_write_iter(struct kiocb *iocb, struct iov_iter *from) argument 191 struct drm_dp_aux_dev *aux_dev = iocb->ki_filp->private_data; 192 loff_t pos = iocb->ki_pos; 222 if (pos != iocb [all...] |
/linux-master/drivers/comedi/drivers/ |
H A D | comedi_8254.c | 215 return 0xff & i8254->iocb(i8254, 0, reg, 0); 221 i8254->iocb(i8254, 1, reg, val); 619 static struct comedi_8254 *__i8254_init(comedi_8254_iocb_fn *iocb, argument 633 if (!iocb) 640 i8254->iocb = iocb; 672 comedi_8254_iocb_fn *iocb; local 676 iocb = i8254_io8_cb; 679 iocb = i8254_io16_cb; 682 iocb 708 comedi_8254_iocb_fn *iocb; local [all...] |
/linux-master/mm/ |
H A D | page_io.c | 244 struct kiocb iocb; member in struct:swap_iocb 264 static void sio_write_complete(struct kiocb *iocb, long ret) argument 266 struct swap_iocb *sio = container_of(iocb, struct swap_iocb, iocb); 309 if (sio->iocb.ki_filp != swap_file || 310 sio->iocb.ki_pos + sio->len != pos) { 317 init_sync_kiocb(&sio->iocb, swap_file); 318 sio->iocb.ki_complete = sio_write_complete; 319 sio->iocb.ki_pos = pos; 395 struct address_space *mapping = sio->iocb 404 sio_read_complete(struct kiocb *iocb, long ret) argument [all...] |
/linux-master/include/linux/ |
H A D | backing-file.h | 26 struct kiocb *iocb, int flags, 29 struct kiocb *iocb, int flags,
|
/linux-master/drivers/nvme/target/ |
H A D | io-cmd-file.c | 79 struct kiocb *iocb = &req->f.iocb; local 80 ssize_t (*call_iter)(struct kiocb *iocb, struct iov_iter *iter); 96 iocb->ki_pos = pos; 97 iocb->ki_filp = req->ns->file; 98 iocb->ki_flags = ki_flags | iocb->ki_filp->f_iocb_flags; 100 return call_iter(iocb, &iter); 103 static void nvmet_file_io_done(struct kiocb *iocb, long ret) argument 105 struct nvmet_req *req = container_of(iocb, struc [all...] |
/linux-master/fs/gfs2/ |
H A D | file.c | 778 struct kiocb *iocb, 795 offs = offset_in_page(iocb->ki_pos); 809 static ssize_t gfs2_file_direct_read(struct kiocb *iocb, struct iov_iter *to, argument 812 struct file *file = iocb->ki_filp; 845 ret = iomap_dio_rw(iocb, to, &gfs2_iomap_ops, NULL, 855 if (should_fault_in_pages(to, iocb, &prev_count, &window_size)) { 872 static ssize_t gfs2_file_direct_write(struct kiocb *iocb, struct iov_iter *from, argument 875 struct file *file = iocb->ki_filp; 907 if (iocb->ki_pos + iov_iter_count(from) > i_size_read(&ip->i_inode)) 911 ret = iomap_dio_rw(iocb, fro 777 should_fault_in_pages(struct iov_iter *i, struct kiocb *iocb, size_t *prev_count, size_t *window_size) argument 947 gfs2_file_read_iter(struct kiocb *iocb, struct iov_iter *to) argument 1008 gfs2_file_buffered_write(struct kiocb *iocb, struct iov_iter *from, struct gfs2_holder *gh) argument 1097 gfs2_file_write_iter(struct kiocb *iocb, struct iov_iter *from) argument [all...] |
/linux-master/fs/fuse/ |
H A D | passthrough.c | 28 ssize_t fuse_passthrough_read_iter(struct kiocb *iocb, struct iov_iter *iter) argument 30 struct file *file = iocb->ki_filp; 43 backing_file, iocb->ki_pos, count); 48 ret = backing_file_read_iter(backing_file, iter, iocb, iocb->ki_flags, 54 ssize_t fuse_passthrough_write_iter(struct kiocb *iocb, argument 57 struct file *file = iocb->ki_filp; 70 backing_file, iocb->ki_pos, count); 76 ret = backing_file_write_iter(backing_file, iter, iocb, iocb [all...] |
/linux-master/fs/nfs/ |
H A D | direct.c | 135 * @iocb: target I/O control block 140 int nfs_swap_rw(struct kiocb *iocb, struct iov_iter *iter) argument 147 ret = nfs_file_direct_read(iocb, iter, true); 149 ret = nfs_file_direct_write(iocb, iter, true); 223 if (dreq->iocb) 240 * Synchronous I/O uses a stack-allocated iocb. Thus we can't trust 241 * the iocb is still valid here if this is a synchronous request. 249 if (dreq->iocb) { 255 dreq->iocb->ki_complete(dreq->iocb, re 416 nfs_file_direct_read(struct kiocb *iocb, struct iov_iter *iter, bool swap) argument 958 nfs_file_direct_write(struct kiocb *iocb, struct iov_iter *iter, bool swap) argument [all...] |
/linux-master/include/uapi/linux/ |
H A D | aio_abi.h | 49 * Valid flags for the "aio_flags" member of the "struct iocb". 51 * IOCB_FLAG_RESFD - Set if the "aio_resfd" member of the "struct iocb" 53 * IOCB_FLAG_IOPRIO - Set if the "aio_reqprio" member of the "struct iocb" 61 __u64 data; /* the data field from the iocb */ 62 __u64 obj; /* what iocb this event came from */ 73 struct iocb { struct 99 /* flags for the "struct iocb" */
|