/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 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 111 netfs_unbuffered_read_iter(struct kiocb *iocb, struct iov_iter *iter) argument [all...] |
H A D | direct_write.c | 30 ssize_t netfs_unbuffered_write_iter_locked(struct kiocb *iocb, struct iov_iter *iter, argument 34 unsigned long long start = iocb->ki_pos; 38 bool async = !is_sync_kiocb(iocb); 50 wreq = netfs_create_write_req(iocb->ki_filp->f_mapping, iocb->ki_filp, start, 51 iocb->ki_flags & IOCB_DIRECT ? 57 trace_netfs_write(wreq, (iocb->ki_flags & IOCB_DIRECT ? 94 wreq->iocb = iocb; 96 ret = netfs_unbuffered_write(wreq, is_sync_kiocb(iocb), iov_iter_coun 135 netfs_unbuffered_write_iter(struct kiocb *iocb, struct iov_iter *from) argument [all...] |
H A D | buffered_write.c | 153 * @iocb: The operation parameters 157 * Copy data into pagecache pages attached to the inode specified by @iocb. 165 ssize_t netfs_perform_write(struct kiocb *iocb, struct iov_iter *iter, argument 168 struct file *file = iocb->ki_filp; 176 .range_start = iocb->ki_pos, 177 .range_end = iocb->ki_pos + iter->count, 184 unsigned int bdp_flags = (iocb->ki_flags & IOCB_NOWAIT) ? BDP_ASYNC : 0; 186 loff_t i_size, pos = iocb->ki_pos, from, to; 191 iocb->ki_flags & (IOCB_DSYNC | IOCB_SYNC)) 201 wreq = netfs_begin_writethrough(iocb, ite 454 netfs_buffered_write_iter_locked(struct kiocb *iocb, struct iov_iter *from, struct netfs_group *netfs_group) argument 487 netfs_file_write_iter(struct kiocb *iocb, struct iov_iter *from) argument [all...] |
/linux-master/fs/ |
H A D | backing-file.c | 79 struct kiocb iocb; member in struct:backing_aio 101 fput(aio->iocb.ki_filp); 108 struct kiocb *iocb = &aio->iocb; local 114 orig_iocb->ki_pos = iocb->ki_pos; 118 static void backing_aio_rw_complete(struct kiocb *iocb, long res) argument 120 struct backing_aio *aio = container_of(iocb, struct backing_aio, iocb); 123 if (iocb->ki_flags & IOCB_WRITE) 124 kiocb_end_write(iocb); 137 backing_aio_queue_completion(struct kiocb *iocb, long res) argument 150 backing_aio_init_wq(struct kiocb *iocb) argument 161 backing_file_read_iter(struct file *file, struct iov_iter *iter, struct kiocb *iocb, int flags, struct backing_file_ctx *ctx) argument 209 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, 593 void kiocb_set_cancel_fn(struct kiocb *iocb, kiocb_cancel_fn *cancel) argument 603 if (!(iocb->ki_flags & IOCB_AIO_RW)) 606 req = container_of(iocb, struct aio_kiocb, rw); 1112 static inline void iocb_destroy(struct aio_kiocb *iocb) argument 1114 if (iocb->ki_eventfd) 1115 eventfd_ctx_put(iocb->ki_eventfd); 1116 if (iocb 1130 aio_complete(struct aio_kiocb *iocb) argument 1215 iocb_put(struct aio_kiocb *iocb) argument 1490 aio_remove_iocb(struct aio_kiocb *iocb) argument 1502 struct aio_kiocb *iocb = container_of(kiocb, struct aio_kiocb, rw); local 1519 aio_prep_rw(struct kiocb *req, const struct iocb *iocb) argument 1553 aio_setup_rw(int rw, const struct iocb *iocb, struct iovec **iovec, bool vectored, bool compat, struct iov_iter *iter) argument 1589 aio_read(struct kiocb *req, const struct iocb *iocb, bool vectored, bool compat) argument 1616 aio_write(struct kiocb *req, const struct iocb *iocb, bool vectored, bool compat) argument 1650 struct aio_kiocb *iocb = container_of(work, struct aio_kiocb, fsync.work); local 1659 aio_fsync(struct fsync_iocb *req, const struct iocb *iocb, bool datasync) argument 1682 struct aio_kiocb *iocb = container_of(req, struct aio_kiocb, poll); local 1735 struct aio_kiocb *iocb = container_of(req, struct aio_kiocb, poll); local 1778 aio_poll_cancel(struct kiocb *iocb) argument 1799 struct aio_kiocb *iocb = container_of(req, struct aio_kiocb, poll); local 1879 struct aio_kiocb *iocb; member in struct:aio_poll_table 1902 aio_poll(struct aio_kiocb *aiocb, const struct iocb *iocb) argument 1977 __io_submit_one(struct kioctx *ctx, const struct iocb *iocb, struct iocb __user *user_iocb, struct aio_kiocb *req, bool compat) argument 2035 struct iocb iocb; local [all...] |
/linux-master/fs/xfs/ |
H A D | xfs_file.c | 189 struct kiocb *iocb, 192 struct xfs_inode *ip = XFS_I(file_inode(iocb->ki_filp)); 194 if (iocb->ki_flags & IOCB_NOWAIT) { 206 struct kiocb *iocb, 210 struct xfs_inode *ip = XFS_I(file_inode(iocb->ki_filp)); 212 ret = xfs_ilock_iocb(iocb, *lock_mode); 223 return xfs_ilock_iocb(iocb, *lock_mode); 243 struct kiocb *iocb, 246 struct xfs_inode *ip = XFS_I(file_inode(iocb->ki_filp)); 249 trace_xfs_file_direct_read(iocb, t 188 xfs_ilock_iocb( struct kiocb *iocb, unsigned int lock_mode) argument 205 xfs_ilock_iocb_for_write( struct kiocb *iocb, unsigned int *lock_mode) argument 242 xfs_file_dio_read( struct kiocb *iocb, struct iov_iter *to) argument 266 xfs_file_dax_read( struct kiocb *iocb, struct iov_iter *to) argument 289 xfs_file_buffered_read( struct kiocb *iocb, struct iov_iter *to) argument 308 xfs_file_read_iter( struct kiocb *iocb, struct iov_iter *to) argument 369 xfs_file_write_checks( struct kiocb *iocb, struct iov_iter *from, unsigned int *iolock) argument 476 xfs_dio_write_end_io( struct kiocb *iocb, ssize_t size, int error, unsigned flags) argument 570 xfs_file_dio_write_aligned( struct xfs_inode *ip, struct kiocb *iocb, struct iov_iter *from) argument 621 xfs_file_dio_write_unaligned( struct xfs_inode *ip, struct kiocb *iocb, struct iov_iter *from) argument 694 xfs_file_dio_write( struct kiocb *iocb, struct iov_iter *from) argument 711 xfs_file_dax_write( struct kiocb *iocb, struct iov_iter *from) argument 752 xfs_file_buffered_write( struct kiocb *iocb, struct iov_iter *from) argument 816 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 51 loff_t pos = iocb->ki_pos; 70 bio_init(&bio, bdev, vecs, nr_pages, dio_bio_write_op(iocb)); 73 bio.bi_write_hint = file_inode(iocb->ki_filp)->i_write_hint; 74 bio.bi_ioprio = iocb->ki_ioprio; 84 if (iocb->ki_flags & IOCB_NOWAIT) 109 struct kiocb *iocb; member in union:blkdev_dio::__anon18 130 struct kiocb *iocb local 160 __blkdev_direct_IO(struct kiocb *iocb, struct iov_iter *iter, struct block_device *bdev, unsigned int nr_pages) argument 274 struct kiocb *iocb = dio->iocb; local 296 __blkdev_direct_IO_async(struct kiocb *iocb, struct iov_iter *iter, struct block_device *bdev, unsigned int nr_pages) argument 359 blkdev_direct_IO(struct kiocb *iocb, struct iov_iter *iter) argument 628 blkdev_direct_write(struct kiocb *iocb, struct iov_iter *from) argument 651 blkdev_buffered_write(struct kiocb *iocb, struct iov_iter *from) argument 663 blkdev_write_iter(struct kiocb *iocb, struct iov_iter *from) argument 712 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/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 | 245 struct kiocb iocb; member in struct:swap_iocb 265 static void sio_write_complete(struct kiocb *iocb, long ret) argument 267 struct swap_iocb *sio = container_of(iocb, struct swap_iocb, iocb); 310 if (sio->iocb.ki_filp != swap_file || 311 sio->iocb.ki_pos + sio->len != pos) { 318 init_sync_kiocb(&sio->iocb, swap_file); 319 sio->iocb.ki_complete = sio_write_complete; 320 sio->iocb.ki_pos = pos; 396 struct address_space *mapping = sio->iocb 405 sio_read_complete(struct kiocb *iocb, long ret) argument [all...] |
/linux-master/include/linux/ |
H A D | backing-file.h | 29 struct kiocb *iocb, int flags, 32 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/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/gfs2/ |
H A D | file.c | 779 struct kiocb *iocb, 796 offs = offset_in_page(iocb->ki_pos); 810 static ssize_t gfs2_file_direct_read(struct kiocb *iocb, struct iov_iter *to, argument 813 struct file *file = iocb->ki_filp; 846 ret = iomap_dio_rw(iocb, to, &gfs2_iomap_ops, NULL, 856 if (should_fault_in_pages(to, iocb, &prev_count, &window_size)) { 873 static ssize_t gfs2_file_direct_write(struct kiocb *iocb, struct iov_iter *from, argument 876 struct file *file = iocb->ki_filp; 908 if (iocb->ki_pos + iov_iter_count(from) > i_size_read(&ip->i_inode)) 912 ret = iomap_dio_rw(iocb, fro 778 should_fault_in_pages(struct iov_iter *i, struct kiocb *iocb, size_t *prev_count, size_t *window_size) argument 948 gfs2_file_read_iter(struct kiocb *iocb, struct iov_iter *to) argument 1009 gfs2_file_buffered_write(struct kiocb *iocb, struct iov_iter *from, struct gfs2_holder *gh) argument 1098 gfs2_file_write_iter(struct kiocb *iocb, struct iov_iter *from) argument [all...] |
/linux-master/fs/cachefiles/ |
H A D | io.c | 19 struct kiocb iocb; member in struct:cachefiles_kiocb 38 fput(ki->iocb.ki_filp); 46 static void cachefiles_read_complete(struct kiocb *iocb, long ret) argument 48 struct cachefiles_kiocb *ki = container_of(iocb, struct cachefiles_kiocb, iocb); 49 struct inode *inode = file_inode(ki->iocb.ki_filp); 139 ki->iocb.ki_filp = file; 140 ki->iocb.ki_pos = start_pos + skipped; 141 ki->iocb.ki_flags = IOCB_DIRECT; 142 ki->iocb 255 cachefiles_write_complete(struct kiocb *iocb, long ret) argument [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...] |