arch/s390/hypfs/inode.c
128
static ssize_t hypfs_read_iter(struct kiocb *iocb, struct iov_iter *to)
arch/s390/hypfs/inode.c
130
struct file *file = iocb->ki_filp;
arch/s390/hypfs/inode.c
133
loff_t pos = iocb->ki_pos;
arch/s390/hypfs/inode.c
143
iocb->ki_pos = pos + count;
arch/s390/hypfs/inode.c
148
static ssize_t hypfs_write_iter(struct kiocb *iocb, struct iov_iter *from)
arch/s390/hypfs/inode.c
151
struct super_block *sb = file_inode(iocb->ki_filp)->i_sb;
block/fops.c
120
struct kiocb *iocb;
block/fops.c
145
struct kiocb *iocb = dio->iocb;
block/fops.c
148
WRITE_ONCE(iocb->private, NULL);
block/fops.c
152
iocb->ki_pos += ret;
block/fops.c
157
dio->iocb->ki_complete(iocb, ret);
block/fops.c
175
static ssize_t __blkdev_direct_IO(struct kiocb *iocb, struct iov_iter *iter,
block/fops.c
182
blk_opf_t opf = is_read ? REQ_OP_READ : dio_bio_write_op(iocb);
block/fops.c
183
loff_t pos = iocb->ki_pos;
block/fops.c
196
is_sync = is_sync_kiocb(iocb);
block/fops.c
202
dio->iocb = iocb;
block/fops.c
213
bio->bi_write_hint = file_inode(iocb->ki_filp)->i_write_hint;
block/fops.c
214
bio->bi_write_stream = iocb->ki_write_stream;
block/fops.c
217
bio->bi_ioprio = iocb->ki_ioprio;
block/fops.c
224
if (iocb->ki_flags & IOCB_NOWAIT) {
block/fops.c
239
if (iocb->ki_flags & IOCB_HAS_METADATA) {
block/fops.c
240
ret = bio_integrity_map_iter(bio, iocb->private);
block/fops.c
29
static blk_opf_t dio_bio_write_op(struct kiocb *iocb)
block/fops.c
295
struct kiocb *iocb = dio->iocb;
block/fops.c
298
WRITE_ONCE(iocb->private, NULL);
block/fops.c
302
iocb->ki_pos += ret;
block/fops.c
310
iocb->ki_complete(iocb, ret);
block/fops.c
320
static ssize_t __blkdev_direct_IO_async(struct kiocb *iocb,
block/fops.c
326
blk_opf_t opf = is_read ? REQ_OP_READ : dio_bio_write_op(iocb);
block/fops.c
329
loff_t pos = iocb->ki_pos;
block/fops.c
336
dio->iocb = iocb;
block/fops.c
338
bio->bi_write_hint = file_inode(iocb->ki_filp)->i_write_hint;
block/fops.c
339
bio->bi_write_stream = iocb->ki_write_stream;
block/fops.c
34
if (iocb_is_dsync(iocb))
block/fops.c
341
bio->bi_ioprio = iocb->ki_ioprio;
block/fops.c
367
if (iocb->ki_flags & IOCB_HAS_METADATA) {
block/fops.c
368
ret = bio_integrity_map_iter(bio, iocb->private);
block/fops.c
369
WRITE_ONCE(iocb->private, NULL);
block/fops.c
374
if (iocb->ki_flags & IOCB_ATOMIC)
block/fops.c
377
if (iocb->ki_flags & IOCB_NOWAIT)
block/fops.c
380
if (iocb->ki_flags & IOCB_HIPRI) {
block/fops.c
383
WRITE_ONCE(iocb->private, bio);
block/fops.c
39
static bool blkdev_dio_invalid(struct block_device *bdev, struct kiocb *iocb,
block/fops.c
394
static ssize_t blkdev_direct_IO(struct kiocb *iocb, struct iov_iter *iter)
block/fops.c
396
struct block_device *bdev = I_BDEV(iocb->ki_filp->f_mapping->host);
block/fops.c
402
if (blkdev_dio_invalid(bdev, iocb, iter))
block/fops.c
408
if (iocb->ki_write_stream) {
block/fops.c
409
if (iocb->ki_write_stream > max_write_streams)
block/fops.c
413
file_inode(iocb->ki_filp)->i_write_hint;
block/fops.c
42
return (iocb->ki_pos | iov_iter_count(iter)) &
block/fops.c
421
iocb->ki_write_stream = write_hint;
block/fops.c
427
!(iocb->ki_flags & IOCB_HAS_METADATA))) {
block/fops.c
428
if (is_sync_kiocb(iocb))
block/fops.c
429
return __blkdev_direct_IO_simple(iocb, iter, bdev,
block/fops.c
431
return __blkdev_direct_IO_async(iocb, iter, bdev, nr_pages);
block/fops.c
432
} else if (iocb->ki_flags & IOCB_ATOMIC) {
block/fops.c
435
return __blkdev_direct_IO(iocb, iter, bdev, bio_max_segs(nr_pages));
block/fops.c
55
static ssize_t __blkdev_direct_IO_simple(struct kiocb *iocb,
block/fops.c
60
loff_t pos = iocb->ki_pos;
block/fops.c
685
blkdev_direct_write(struct kiocb *iocb, struct iov_iter *from)
block/fops.c
690
written = kiocb_invalidate_pages(iocb, count);
block/fops.c
697
written = blkdev_direct_IO(iocb, from);
block/fops.c
699
kiocb_invalidate_post_direct_write(iocb, count);
block/fops.c
700
iocb->ki_pos += written;
block/fops.c
708
static ssize_t blkdev_buffered_write(struct kiocb *iocb, struct iov_iter *from)
block/fops.c
710
return iomap_file_buffered_write(iocb, from, &blkdev_iomap_ops, NULL,
block/fops.c
721
static ssize_t blkdev_write_iter(struct kiocb *iocb, struct iov_iter *from)
block/fops.c
723
struct file *file = iocb->ki_filp;
block/fops.c
726
bool atomic = iocb->ki_flags & IOCB_ATOMIC;
block/fops.c
740
if (iocb->ki_pos >= size)
block/fops.c
743
if ((iocb->ki_flags & (IOCB_NOWAIT | IOCB_DIRECT)) == IOCB_NOWAIT)
block/fops.c
747
ret = generic_atomic_write_valid(iocb, from);
block/fops.c
752
size -= iocb->ki_pos;
block/fops.c
764
if (iocb->ki_flags & IOCB_DIRECT) {
block/fops.c
765
ret = blkdev_direct_write(iocb, from);
block/fops.c
767
ret = direct_write_fallback(iocb, from, ret,
block/fops.c
768
blkdev_buffered_write(iocb, from));
block/fops.c
776
ret = blkdev_buffered_write(iocb, from);
block/fops.c
78
bio_init(&bio, bdev, vecs, nr_pages, dio_bio_write_op(iocb));
block/fops.c
781
ret = generic_write_sync(iocb, ret);
block/fops.c
786
static ssize_t blkdev_read_iter(struct kiocb *iocb, struct iov_iter *to)
block/fops.c
788
struct inode *bd_inode = bdev_file_inode(iocb->ki_filp);
block/fops.c
789
struct block_device *bdev = I_BDEV(iocb->ki_filp->f_mapping->host);
block/fops.c
791
loff_t pos = iocb->ki_pos;
block/fops.c
808
if (iocb->ki_flags & IOCB_DIRECT) {
block/fops.c
809
ret = kiocb_write_and_wait(iocb, count);
block/fops.c
81
bio.bi_write_hint = file_inode(iocb->ki_filp)->i_write_hint;
block/fops.c
812
file_accessed(iocb->ki_filp);
block/fops.c
814
ret = blkdev_direct_IO(iocb, to);
block/fops.c
816
iocb->ki_pos += ret;
block/fops.c
82
bio.bi_write_stream = iocb->ki_write_stream;
block/fops.c
83
bio.bi_ioprio = iocb->ki_ioprio;
block/fops.c
830
ret = filemap_read(iocb, to, ret);
block/fops.c
84
if (iocb->ki_flags & IOCB_ATOMIC)
block/fops.c
95
if (iocb->ki_flags & IOCB_NOWAIT)
drivers/block/loop.c
327
kiocb_end_write(&cmd->iocb);
drivers/block/loop.c
332
static void lo_rw_aio_complete(struct kiocb *iocb, long ret)
drivers/block/loop.c
334
struct loop_cmd *cmd = container_of(iocb, struct loop_cmd, iocb);
drivers/block/loop.c
385
cmd->iocb.ki_pos = pos;
drivers/block/loop.c
386
cmd->iocb.ki_filp = file;
drivers/block/loop.c
387
cmd->iocb.ki_ioprio = req_get_ioprio(rq);
drivers/block/loop.c
389
cmd->iocb.ki_complete = lo_rw_aio_complete;
drivers/block/loop.c
390
cmd->iocb.ki_flags = IOCB_DIRECT;
drivers/block/loop.c
392
cmd->iocb.ki_complete = NULL;
drivers/block/loop.c
393
cmd->iocb.ki_flags = 0;
drivers/block/loop.c
397
kiocb_start_write(&cmd->iocb);
drivers/block/loop.c
398
ret = file->f_op->write_iter(&cmd->iocb, &iter);
drivers/block/loop.c
400
ret = file->f_op->read_iter(&cmd->iocb, &iter);
drivers/block/loop.c
405
lo_rw_aio_complete(&cmd->iocb, ret);
drivers/block/loop.c
84
struct kiocb iocb;
drivers/block/ublk_drv.c
4049
ublk_user_copy(struct kiocb *iocb, struct iov_iter *iter, int dir)
drivers/block/ublk_drv.c
4051
struct ublk_device *ub = iocb->ki_filp->private_data;
drivers/block/ublk_drv.c
4068
tag = ublk_pos_to_tag(iocb->ki_pos);
drivers/block/ublk_drv.c
4069
q_id = ublk_pos_to_hwq(iocb->ki_pos);
drivers/block/ublk_drv.c
4070
buf_off = ublk_pos_to_buf_off(iocb->ki_pos);
drivers/block/ublk_drv.c
4071
is_integrity = !!(iocb->ki_pos & UBLKSRV_IO_INTEGRITY_FLAG);
drivers/block/ublk_drv.c
4130
static ssize_t ublk_ch_read_iter(struct kiocb *iocb, struct iov_iter *to)
drivers/block/ublk_drv.c
4132
return ublk_user_copy(iocb, to, ITER_DEST);
drivers/block/ublk_drv.c
4135
static ssize_t ublk_ch_write_iter(struct kiocb *iocb, struct iov_iter *from)
drivers/block/ublk_drv.c
4137
return ublk_user_copy(iocb, from, ITER_SOURCE);
drivers/block/zloop.c
161
struct kiocb iocb;
drivers/block/zloop.c
510
static void zloop_rw_complete(struct kiocb *iocb, long ret)
drivers/block/zloop.c
512
struct zloop_cmd *cmd = container_of(iocb, struct zloop_cmd, iocb);
drivers/block/zloop.c
559
cmd->iocb.ki_pos = (cmd->sector - zone->start) << SECTOR_SHIFT;
drivers/block/zloop.c
560
cmd->iocb.ki_filp = zone->file;
drivers/block/zloop.c
561
cmd->iocb.ki_complete = zloop_rw_complete;
drivers/block/zloop.c
563
cmd->iocb.ki_flags = IOCB_DIRECT;
drivers/block/zloop.c
564
cmd->iocb.ki_ioprio = IOPRIO_PRIO_VALUE(IOPRIO_CLASS_NONE, 0);
drivers/block/zloop.c
567
return zone->file->f_op->write_iter(&cmd->iocb, &iter);
drivers/block/zloop.c
568
return zone->file->f_op->read_iter(&cmd->iocb, &iter);
drivers/block/zloop.c
684
zloop_rw_complete(&cmd->iocb, ret);
drivers/bluetooth/hci_vhci.c
621
static ssize_t vhci_write(struct kiocb *iocb, struct iov_iter *from)
drivers/bluetooth/hci_vhci.c
623
struct file *file = iocb->ki_filp;
drivers/char/mem.c
421
static ssize_t read_iter_null(struct kiocb *iocb, struct iov_iter *to)
drivers/char/mem.c
426
static ssize_t write_iter_null(struct kiocb *iocb, struct iov_iter *from)
drivers/char/mem.c
450
static ssize_t read_iter_zero(struct kiocb *iocb, struct iov_iter *iter)
drivers/char/mem.c
467
if (iocb->ki_flags & IOCB_NOWAIT)
drivers/comedi/drivers/comedi_8254.c
215
return 0xff & i8254->iocb(i8254, 0, reg, 0);
drivers/comedi/drivers/comedi_8254.c
221
i8254->iocb(i8254, 1, reg, val);
drivers/comedi/drivers/comedi_8254.c
619
static struct comedi_8254 *__i8254_init(comedi_8254_iocb_fn *iocb,
drivers/comedi/drivers/comedi_8254.c
633
if (!iocb)
drivers/comedi/drivers/comedi_8254.c
640
i8254->iocb = iocb;
drivers/comedi/drivers/comedi_8254.c
672
comedi_8254_iocb_fn *iocb;
drivers/comedi/drivers/comedi_8254.c
676
iocb = i8254_io8_cb;
drivers/comedi/drivers/comedi_8254.c
679
iocb = i8254_io16_cb;
drivers/comedi/drivers/comedi_8254.c
682
iocb = i8254_io32_cb;
drivers/comedi/drivers/comedi_8254.c
687
return __i8254_init(iocb, iobase, osc_base, iosize, regshift);
drivers/comedi/drivers/comedi_8254.c
708
comedi_8254_iocb_fn *iocb;
drivers/comedi/drivers/comedi_8254.c
712
iocb = i8254_mmio8_cb;
drivers/comedi/drivers/comedi_8254.c
715
iocb = i8254_mmio16_cb;
drivers/comedi/drivers/comedi_8254.c
718
iocb = i8254_mmio32_cb;
drivers/comedi/drivers/comedi_8254.c
723
return __i8254_init(iocb, (unsigned long)mmio, osc_base, iosize, regshift);
drivers/gpu/drm/display/drm_dp_aux_dev.c
146
static ssize_t auxdev_read_iter(struct kiocb *iocb, struct iov_iter *to)
drivers/gpu/drm/display/drm_dp_aux_dev.c
148
struct drm_dp_aux_dev *aux_dev = iocb->ki_filp->private_data;
drivers/gpu/drm/display/drm_dp_aux_dev.c
149
loff_t pos = iocb->ki_pos;
drivers/gpu/drm/display/drm_dp_aux_dev.c
179
if (pos != iocb->ki_pos)
drivers/gpu/drm/display/drm_dp_aux_dev.c
180
res = pos - iocb->ki_pos;
drivers/gpu/drm/display/drm_dp_aux_dev.c
181
iocb->ki_pos = pos;
drivers/gpu/drm/display/drm_dp_aux_dev.c
189
static ssize_t auxdev_write_iter(struct kiocb *iocb, struct iov_iter *from)
drivers/gpu/drm/display/drm_dp_aux_dev.c
191
struct drm_dp_aux_dev *aux_dev = iocb->ki_filp->private_data;
drivers/gpu/drm/display/drm_dp_aux_dev.c
192
loff_t pos = iocb->ki_pos;
drivers/gpu/drm/display/drm_dp_aux_dev.c
222
if (pos != iocb->ki_pos)
drivers/gpu/drm/display/drm_dp_aux_dev.c
223
res = pos - iocb->ki_pos;
drivers/gpu/drm/display/drm_dp_aux_dev.c
224
iocb->ki_pos = pos;
drivers/net/tap.c
691
static ssize_t tap_write_iter(struct kiocb *iocb, struct iov_iter *from)
drivers/net/tap.c
693
struct file *file = iocb->ki_filp;
drivers/net/tap.c
697
if ((file->f_flags & O_NONBLOCK) || (iocb->ki_flags & IOCB_NOWAIT))
drivers/net/tap.c
805
static ssize_t tap_read_iter(struct kiocb *iocb, struct iov_iter *to)
drivers/net/tap.c
807
struct file *file = iocb->ki_filp;
drivers/net/tap.c
812
if ((file->f_flags & O_NONBLOCK) || (iocb->ki_flags & IOCB_NOWAIT))
drivers/net/tap.c
818
iocb->ki_pos = ret;
drivers/net/tun.c
1987
static ssize_t tun_chr_write_iter(struct kiocb *iocb, struct iov_iter *from)
drivers/net/tun.c
1989
struct file *file = iocb->ki_filp;
drivers/net/tun.c
1998
if ((file->f_flags & O_NONBLOCK) || (iocb->ki_flags & IOCB_NOWAIT))
drivers/net/tun.c
2197
static ssize_t tun_chr_read_iter(struct kiocb *iocb, struct iov_iter *to)
drivers/net/tun.c
2199
struct file *file = iocb->ki_filp;
drivers/net/tun.c
2208
if ((file->f_flags & O_NONBLOCK) || (iocb->ki_flags & IOCB_NOWAIT))
drivers/net/tun.c
2214
iocb->ki_pos = ret;
drivers/nvme/target/io-cmd-file.c
100
return call_iter(iocb, &iter);
drivers/nvme/target/io-cmd-file.c
103
static void nvmet_file_io_done(struct kiocb *iocb, long ret)
drivers/nvme/target/io-cmd-file.c
105
struct nvmet_req *req = container_of(iocb, struct nvmet_req, f.iocb);
drivers/nvme/target/io-cmd-file.c
140
memset(&req->f.iocb, 0, sizeof(struct kiocb));
drivers/nvme/target/io-cmd-file.c
178
req->f.iocb.ki_complete = nvmet_file_io_done;
drivers/nvme/target/io-cmd-file.c
201
nvmet_file_io_done(&req->f.iocb, ret);
drivers/nvme/target/io-cmd-file.c
79
struct kiocb *iocb = &req->f.iocb;
drivers/nvme/target/io-cmd-file.c
80
ssize_t (*call_iter)(struct kiocb *iocb, struct iov_iter *iter);
drivers/nvme/target/io-cmd-file.c
96
iocb->ki_pos = pos;
drivers/nvme/target/io-cmd-file.c
97
iocb->ki_filp = req->ns->file;
drivers/nvme/target/io-cmd-file.c
98
iocb->ki_flags = ki_flags | iocb->ki_filp->f_iocb_flags;
drivers/nvme/target/nvmet.h
462
struct kiocb iocb;
drivers/rpmsg/rpmsg_char.c
208
static ssize_t rpmsg_eptdev_read_iter(struct kiocb *iocb, struct iov_iter *to)
drivers/rpmsg/rpmsg_char.c
210
struct file *filp = iocb->ki_filp;
drivers/rpmsg/rpmsg_char.c
255
static ssize_t rpmsg_eptdev_write_iter(struct kiocb *iocb,
drivers/rpmsg/rpmsg_char.c
258
struct file *filp = iocb->ki_filp;
drivers/s390/char/fs3270.c
326
struct raw3270_iocb iocb;
drivers/s390/char/fs3270.c
349
iocb.model = fp->view.model;
drivers/s390/char/fs3270.c
350
iocb.line_cnt = fp->view.rows;
drivers/s390/char/fs3270.c
351
iocb.col_cnt = fp->view.cols;
drivers/s390/char/fs3270.c
352
iocb.pf_cnt = 24;
drivers/s390/char/fs3270.c
353
iocb.re_cnt = 20;
drivers/s390/char/fs3270.c
354
iocb.map = 0;
drivers/s390/char/fs3270.c
355
if (copy_to_user(argp, &iocb, sizeof(struct raw3270_iocb)))
drivers/scsi/lpfc/lpfc.h
1770
return iocbq->iocb.ulpStatus;
drivers/scsi/lpfc/lpfc.h
1779
return iocbq->iocb.un.ulpWord[4];
drivers/scsi/lpfc/lpfc.h
1788
return iocbq->iocb.ulpCommand;
drivers/scsi/lpfc/lpfc.h
1797
return iocbq->iocb.ulpContext;
drivers/scsi/lpfc/lpfc.h
1806
return iocbq->iocb.unsli3.rcvsli3.ox_id;
drivers/scsi/lpfc/lpfc.h
1815
return iocbq->iocb.un.genreq64.bdl.bdeSize;
drivers/scsi/lpfc/lpfc.h
1824
return iocbq->iocb.un.acxri.abortIoTag;
drivers/scsi/lpfc/lpfc.h
1833
return iocbq->iocb.un.elsreq64.remoteID;
drivers/scsi/lpfc/lpfc_bsg.c
1005
size = iocbq->iocb.un.cont64[i].
drivers/scsi/lpfc/lpfc_bsg.c
1007
bde = &iocbq->iocb.un.cont64[i];
drivers/scsi/lpfc/lpfc_bsg.c
1399
ndlp = dd_data->context_un.iocb.ndlp;
drivers/scsi/lpfc/lpfc_bsg.c
1516
iotag = ctiocb->iocb.ulpIoTag;
drivers/scsi/lpfc/lpfc_bsg.c
1536
dd_data->context_un.iocb.cmdiocbq = ctiocb;
drivers/scsi/lpfc/lpfc_bsg.c
1537
dd_data->context_un.iocb.ndlp = lpfc_nlp_get(ndlp);
drivers/scsi/lpfc/lpfc_bsg.c
1538
if (!dd_data->context_un.iocb.ndlp) {
drivers/scsi/lpfc/lpfc_bsg.c
1542
dd_data->context_un.iocb.rmp = NULL;
drivers/scsi/lpfc/lpfc_bsg.c
2930
cmd = &cmdiocbq->iocb;
drivers/scsi/lpfc/lpfc_bsg.c
2997
cmd = &cmdiocbq->iocb;
drivers/scsi/lpfc/lpfc_bsg.c
309
struct lpfc_bsg_iocb *iocb;
drivers/scsi/lpfc/lpfc_bsg.c
331
iocb = &dd_data->context_un.iocb;
drivers/scsi/lpfc/lpfc_bsg.c
332
ndlp = iocb->cmdiocbq->ndlp;
drivers/scsi/lpfc/lpfc_bsg.c
333
rmp = iocb->rmp;
drivers/scsi/lpfc/lpfc_bsg.c
487
dd_data->context_un.iocb.cmdiocbq = cmdiocbq;
drivers/scsi/lpfc/lpfc_bsg.c
488
dd_data->context_un.iocb.rmp = rmp;
drivers/scsi/lpfc/lpfc_bsg.c
580
ndlp = dd_data->context_un.iocb.ndlp;
drivers/scsi/lpfc/lpfc_bsg.c
5843
cmdiocb = dd_data->context_un.iocb.cmdiocbq;
drivers/scsi/lpfc/lpfc_bsg.c
726
cmdiocbq->iocb.ulpContext = rpi;
drivers/scsi/lpfc/lpfc_bsg.c
733
dd_data->context_un.iocb.cmdiocbq = cmdiocbq;
drivers/scsi/lpfc/lpfc_bsg.c
734
dd_data->context_un.iocb.ndlp = ndlp;
drivers/scsi/lpfc/lpfc_bsg.c
735
dd_data->context_un.iocb.rmp = NULL;
drivers/scsi/lpfc/lpfc_bsg.c
911
IOCB_t *iocb = NULL;
drivers/scsi/lpfc/lpfc_bsg.c
958
evt_dat->len = iocbq->iocb.unsli3.rcvsli3.acc_len;
drivers/scsi/lpfc/lpfc_bsg.c
961
iocb = &iocbq->iocb;
drivers/scsi/lpfc/lpfc_bsg.c
962
for (i = 0; i < iocb->ulpBdeCount;
drivers/scsi/lpfc/lpfc_bsg.c
965
iocb->un.cont64[i].tus.f.bdeSize;
drivers/scsi/lpfc/lpfc_bsg.c
99
struct lpfc_bsg_iocb iocb;
drivers/scsi/lpfc/lpfc_bsg.c
991
bde_count = iocbq->iocb.ulpBdeCount;
drivers/scsi/lpfc/lpfc_ct.c
341
IOCB_t *icmd = &ctiocbq->iocb;
drivers/scsi/lpfc/lpfc_ct.c
344
struct lpfc_iocbq *iocb;
drivers/scsi/lpfc/lpfc_ct.c
401
list_for_each_entry(iocb, &head, list) {
drivers/scsi/lpfc/lpfc_ct.c
403
bde_count = iocb->wcqe_cmpl.word3;
drivers/scsi/lpfc/lpfc_ct.c
405
bde_count = iocb->iocb.ulpBdeCount;
drivers/scsi/lpfc/lpfc_ct.c
409
bdeBuf1 = iocb->cmd_dmabuf;
drivers/scsi/lpfc/lpfc_ct.c
410
iocb->cmd_dmabuf = NULL;
drivers/scsi/lpfc/lpfc_ct.c
412
size = iocb->wqe.gen_req.bde.tus.f.bdeSize;
drivers/scsi/lpfc/lpfc_ct.c
414
size = iocb->iocb.un.cont64[0].tus.f.bdeSize;
drivers/scsi/lpfc/lpfc_ct.c
418
bdeBuf2 = iocb->bpl_dmabuf;
drivers/scsi/lpfc/lpfc_ct.c
419
iocb->bpl_dmabuf = NULL;
drivers/scsi/lpfc/lpfc_ct.c
421
size = iocb->unsol_rcv_len;
drivers/scsi/lpfc/lpfc_ct.c
423
size = iocb->iocb.unsli3.rcvsli3.bde2.tus.f.bdeSize;
drivers/scsi/lpfc/lpfc_ct.c
434
icmd = &iocbq->iocb;
drivers/scsi/lpfc/lpfc_els.c
10481
payload_len = elsiocb->iocb.unsli3.rcvsli3.acc_len;
drivers/scsi/lpfc/lpfc_els.c
10956
bde_count = elsiocb->iocb.ulpBdeCount;
drivers/scsi/lpfc/lpfc_els.c
10971
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
10995
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
11572
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
11671
irsp = &rspiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
11816
struct lpfc_iocbq *iocb;
drivers/scsi/lpfc/lpfc_els.c
11821
iocb = NULL;
drivers/scsi/lpfc/lpfc_els.c
11825
list_remove_head(&phba->fabric_iocb_list, iocb, typeof(*iocb),
drivers/scsi/lpfc/lpfc_els.c
11827
if (iocb)
drivers/scsi/lpfc/lpfc_els.c
11832
if (iocb) {
drivers/scsi/lpfc/lpfc_els.c
11833
iocb->fabric_cmd_cmpl = iocb->cmd_cmpl;
drivers/scsi/lpfc/lpfc_els.c
11834
iocb->cmd_cmpl = lpfc_cmpl_fabric_iocb;
drivers/scsi/lpfc/lpfc_els.c
11835
iocb->cmd_flag |= LPFC_IO_FABRIC;
drivers/scsi/lpfc/lpfc_els.c
11837
lpfc_debugfs_disc_trc(iocb->vport, LPFC_DISC_TRC_ELS_CMD,
drivers/scsi/lpfc/lpfc_els.c
11839
iocb->vport->port_state, 0, 0);
drivers/scsi/lpfc/lpfc_els.c
11841
ret = lpfc_sli_issue_iocb(phba, LPFC_ELS_RING, iocb, 0);
drivers/scsi/lpfc/lpfc_els.c
11844
iocb->cmd_cmpl = iocb->fabric_cmd_cmpl;
drivers/scsi/lpfc/lpfc_els.c
11845
iocb->fabric_cmd_cmpl = NULL;
drivers/scsi/lpfc/lpfc_els.c
11846
iocb->cmd_flag &= ~LPFC_IO_FABRIC;
drivers/scsi/lpfc/lpfc_els.c
11847
set_job_ulpstatus(iocb, IOSTAT_LOCAL_REJECT);
drivers/scsi/lpfc/lpfc_els.c
11848
iocb->wcqe_cmpl.parameter = IOERR_SLI_ABORTED;
drivers/scsi/lpfc/lpfc_els.c
11849
iocb->cmd_cmpl(phba, iocb, iocb);
drivers/scsi/lpfc/lpfc_els.c
11981
lpfc_issue_fabric_iocb(struct lpfc_hba *phba, struct lpfc_iocbq *iocb)
drivers/scsi/lpfc/lpfc_els.c
11998
iocb->fabric_cmd_cmpl = iocb->cmd_cmpl;
drivers/scsi/lpfc/lpfc_els.c
11999
iocb->cmd_cmpl = lpfc_cmpl_fabric_iocb;
drivers/scsi/lpfc/lpfc_els.c
12000
iocb->cmd_flag |= LPFC_IO_FABRIC;
drivers/scsi/lpfc/lpfc_els.c
12002
lpfc_debugfs_disc_trc(iocb->vport, LPFC_DISC_TRC_ELS_CMD,
drivers/scsi/lpfc/lpfc_els.c
12004
iocb->vport->port_state, 0, 0);
drivers/scsi/lpfc/lpfc_els.c
12006
ret = lpfc_sli_issue_iocb(phba, LPFC_ELS_RING, iocb, 0);
drivers/scsi/lpfc/lpfc_els.c
12009
iocb->cmd_cmpl = iocb->fabric_cmd_cmpl;
drivers/scsi/lpfc/lpfc_els.c
12010
iocb->fabric_cmd_cmpl = NULL;
drivers/scsi/lpfc/lpfc_els.c
12011
iocb->cmd_flag &= ~LPFC_IO_FABRIC;
drivers/scsi/lpfc/lpfc_els.c
12016
list_add_tail(&iocb->list, &phba->fabric_iocb_list);
drivers/scsi/lpfc/lpfc_els.c
1315
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
1439
icmd = &defer_flogi_acc.iocb;
drivers/scsi/lpfc/lpfc_els.c
1505
struct lpfc_iocbq *iocb, *next_iocb;
drivers/scsi/lpfc/lpfc_els.c
1523
list_for_each_entry_safe(iocb, next_iocb, &pring->txcmplq, list) {
drivers/scsi/lpfc/lpfc_els.c
1524
ulp_command = get_job_cmnd(phba, iocb);
drivers/scsi/lpfc/lpfc_els.c
1526
ndlp = iocb->ndlp;
drivers/scsi/lpfc/lpfc_els.c
1531
iocb->fabric_cmd_cmpl =
drivers/scsi/lpfc/lpfc_els.c
1533
lpfc_sli_issue_abort_iotag(phba, pring, iocb,
drivers/scsi/lpfc/lpfc_els.c
2120
irsp = &rspiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
2901
irsp = &rspiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
3087
irsp = &rspiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
3299
irsp = &rspiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
3437
irsp = &rspiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
4099
irsp_iocb = &rspiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
5472
irsp = &rspiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
5680
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
5681
oldcmd = &oldiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
5715
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
5716
oldcmd = &oldiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
5793
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
5794
oldcmd = &oldiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
58
struct lpfc_iocbq *iocb);
drivers/scsi/lpfc/lpfc_els.c
5831
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
5832
oldcmd = &oldiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
5937
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
5938
oldcmd = &oldiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
6028
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
6029
cmd = &cmdiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
6132
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
6133
oldcmd = &oldiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
6135
ulp_context = elsiocb->iocb.ulpContext;
drivers/scsi/lpfc/lpfc_els.c
6254
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
6255
oldcmd = &oldiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
6257
ulp_context = elsiocb->iocb.ulpContext;
drivers/scsi/lpfc/lpfc_els.c
6424
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
6425
oldcmd = &oldiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
6427
ulp_context = elsiocb->iocb.ulpContext;
drivers/scsi/lpfc/lpfc_els.c
6496
struct lpfc_iocbq *iocb, struct lpfc_nodelist *ndlp)
drivers/scsi/lpfc/lpfc_els.c
6506
pcmd = (uint8_t *)iocb->cmd_dmabuf->virt;
drivers/scsi/lpfc/lpfc_els.c
6518
get_wqe_reqtag(iocb),
drivers/scsi/lpfc/lpfc_els.c
6519
get_job_ulpcontext(phba, iocb));
drivers/scsi/lpfc/lpfc_els.c
6561
cmdsize = oldiocb->iocb.unsli3.rcvsli3.acc_len;
drivers/scsi/lpfc/lpfc_els.c
6581
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
6582
oldcmd = &oldiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
6584
ulp_context = elsiocb->iocb.ulpContext;
drivers/scsi/lpfc/lpfc_els.c
7203
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
7302
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
7663
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
7708
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
8800
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
8965
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
9157
icmd = &elsiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
953
irsp = &rspiocb->iocb;
drivers/scsi/lpfc/lpfc_els.c
9634
cmd = &piocb->iocb;
drivers/scsi/lpfc/lpfc_hbadisc.c
5048
struct lpfc_iocbq *iocb,
drivers/scsi/lpfc/lpfc_hbadisc.c
5056
if (iocb->vport != vport)
drivers/scsi/lpfc/lpfc_hbadisc.c
5059
ulp_command = get_job_cmnd(phba, iocb);
drivers/scsi/lpfc/lpfc_hbadisc.c
5060
ulp_context = get_job_ulpcontext(phba, iocb);
drivers/scsi/lpfc/lpfc_hbadisc.c
5061
remote_id = get_job_els_rsp64_did(phba, iocb);
drivers/scsi/lpfc/lpfc_hbadisc.c
5066
if (iocb->ndlp == ndlp)
drivers/scsi/lpfc/lpfc_hbadisc.c
5074
if (iocb->ndlp == ndlp)
drivers/scsi/lpfc/lpfc_hbadisc.c
5094
struct lpfc_iocbq *iocb, *next_iocb;
drivers/scsi/lpfc/lpfc_hbadisc.c
5096
list_for_each_entry_safe(iocb, next_iocb, &pring->txq, list) {
drivers/scsi/lpfc/lpfc_hbadisc.c
5098
if (lpfc_check_sli_ndlp(phba, pring, iocb, ndlp))
drivers/scsi/lpfc/lpfc_hbadisc.c
5100
list_move_tail(&iocb->list, dequeue_list);
drivers/scsi/lpfc/lpfc_hbadisc.c
5961
struct lpfc_iocbq *iocb, *next_iocb;
drivers/scsi/lpfc/lpfc_hbadisc.c
5973
list_for_each_entry_safe(iocb, next_iocb, &pring->txq, list) {
drivers/scsi/lpfc/lpfc_hbadisc.c
5974
if (iocb->ndlp != ndlp)
drivers/scsi/lpfc/lpfc_hbadisc.c
5977
ulp_command = get_job_cmnd(phba, iocb);
drivers/scsi/lpfc/lpfc_hbadisc.c
5982
list_move_tail(&iocb->list, &completions);
drivers/scsi/lpfc/lpfc_hbadisc.c
5987
list_for_each_entry_safe(iocb, next_iocb, &pring->txcmplq, list) {
drivers/scsi/lpfc/lpfc_hbadisc.c
5988
if (iocb->ndlp != ndlp)
drivers/scsi/lpfc/lpfc_hbadisc.c
5991
ulp_command = get_job_cmnd(phba, iocb);
drivers/scsi/lpfc/lpfc_hbadisc.c
5995
lpfc_sli_issue_abort_iotag(phba, pring, iocb, NULL);
drivers/scsi/lpfc/lpfc_hw4.h
66
#define get_job_ulpword(x, y) ((x)->iocb.un.ulpWord[y])
drivers/scsi/lpfc/lpfc_init.c
2814
struct lpfc_iocbq *iocb;
drivers/scsi/lpfc/lpfc_init.c
2822
iocb = lpfc_sli_get_iocbq(phba);
drivers/scsi/lpfc/lpfc_init.c
2823
if (iocb == NULL) {
drivers/scsi/lpfc/lpfc_init.c
2827
icmd = &iocb->iocb;
drivers/scsi/lpfc/lpfc_init.c
2836
lpfc_sli_release_iocbq(phba, iocb);
drivers/scsi/lpfc/lpfc_init.c
2852
lpfc_sli_release_iocbq(phba, iocb);
drivers/scsi/lpfc/lpfc_init.c
2878
if (lpfc_sli_issue_iocb(phba, pring->ringno, iocb, 0) ==
drivers/scsi/lpfc/lpfc_init.c
2888
lpfc_sli_release_iocbq(phba, iocb);
drivers/scsi/lpfc/lpfc_nportdisc.c
1319
ndlp->nlp_rpi = cmdiocb->iocb.ulpIoTag;
drivers/scsi/lpfc/lpfc_nportdisc.c
205
rspiocb->iocb.ulpStatus = IOSTAT_LOCAL_REJECT;
drivers/scsi/lpfc/lpfc_nportdisc.c
206
rspiocb->iocb.un.ulpWord[4] = IOERR_SLI_ABORTED;
drivers/scsi/lpfc/lpfc_nportdisc.c
227
struct lpfc_iocbq *iocb, *next_iocb;
drivers/scsi/lpfc/lpfc_nportdisc.c
253
list_for_each_entry_safe(iocb, next_iocb, &pring->txcmplq, list) {
drivers/scsi/lpfc/lpfc_nportdisc.c
255
if (lpfc_check_sli_ndlp(phba, pring, iocb, ndlp))
drivers/scsi/lpfc/lpfc_nportdisc.c
256
list_add_tail(&iocb->dlist, &abort_list);
drivers/scsi/lpfc/lpfc_nportdisc.c
263
list_for_each_entry_safe(iocb, next_iocb, &abort_list, dlist) {
drivers/scsi/lpfc/lpfc_nportdisc.c
265
list_del_init(&iocb->dlist);
drivers/scsi/lpfc/lpfc_nportdisc.c
266
retval = lpfc_sli_issue_abort_iotag(phba, pring, iocb, NULL);
drivers/scsi/lpfc/lpfc_nportdisc.c
270
list_del_init(&iocb->list);
drivers/scsi/lpfc/lpfc_nportdisc.c
271
list_add_tail(&iocb->list, &drv_cmpl_list);
drivers/scsi/lpfc/lpfc_nportdisc.c
288
list_for_each_entry_safe(iocb, next_iocb, &pring->txq, list) {
drivers/scsi/lpfc/lpfc_nportdisc.c
290
if (lpfc_check_sli_ndlp(phba, pring, iocb, ndlp)) {
drivers/scsi/lpfc/lpfc_nportdisc.c
291
list_del_init(&iocb->list);
drivers/scsi/lpfc/lpfc_nportdisc.c
292
list_add_tail(&iocb->list, &abort_list);
drivers/scsi/lpfc/lpfc_nportdisc.c
412
icmd = &cmdiocb->iocb;
drivers/scsi/lpfc/lpfc_nvmet.c
3312
abts_wqeq->iocb.ulpCommand = CMD_XMIT_SEQUENCE64_CR;
drivers/scsi/lpfc/lpfc_nvmet.c
3313
abts_wqeq->iocb.ulpLe = 1;
drivers/scsi/lpfc/lpfc_scsi.c
251
IOCB_t *iocb;
drivers/scsi/lpfc/lpfc_scsi.c
2527
IOCB_t *iocb_cmd = &lpfc_cmd->cur_iocbq.iocb;
drivers/scsi/lpfc/lpfc_scsi.c
2941
bgf = &pIocbOut->iocb.unsli3.sli3_bg;
drivers/scsi/lpfc/lpfc_scsi.c
330
iocb = &psb->cur_iocbq.iocb;
drivers/scsi/lpfc/lpfc_scsi.c
331
iocb->un.fcpi64.bdl.ulpIoTag32 = 0;
drivers/scsi/lpfc/lpfc_scsi.c
335
iocb->un.fcpi64.bdl.bdeFlags = BUFF_TYPE_BDE_IMMED;
drivers/scsi/lpfc/lpfc_scsi.c
336
iocb->un.fcpi64.bdl.bdeSize = sizeof(struct fcp_cmnd);
drivers/scsi/lpfc/lpfc_scsi.c
337
iocb->un.fcpi64.bdl.addrLow = offsetof(IOCB_t,
drivers/scsi/lpfc/lpfc_scsi.c
339
iocb->un.fcpi64.bdl.addrHigh = 0;
drivers/scsi/lpfc/lpfc_scsi.c
340
iocb->ulpBdeCount = 0;
drivers/scsi/lpfc/lpfc_scsi.c
341
iocb->ulpLe = 0;
drivers/scsi/lpfc/lpfc_scsi.c
343
iocb->unsli3.fcp_ext.rbde.tus.f.bdeFlags =
drivers/scsi/lpfc/lpfc_scsi.c
345
iocb->unsli3.fcp_ext.rbde.tus.f.bdeSize =
drivers/scsi/lpfc/lpfc_scsi.c
347
iocb->unsli3.fcp_ext.rbde.addrLow =
drivers/scsi/lpfc/lpfc_scsi.c
349
iocb->unsli3.fcp_ext.rbde.addrHigh =
drivers/scsi/lpfc/lpfc_scsi.c
352
iocb->un.fcpi64.bdl.bdeFlags = BUFF_TYPE_BLP_64;
drivers/scsi/lpfc/lpfc_scsi.c
353
iocb->un.fcpi64.bdl.bdeSize =
drivers/scsi/lpfc/lpfc_scsi.c
355
iocb->un.fcpi64.bdl.addrLow =
drivers/scsi/lpfc/lpfc_scsi.c
357
iocb->un.fcpi64.bdl.addrHigh =
drivers/scsi/lpfc/lpfc_scsi.c
359
iocb->ulpBdeCount = 1;
drivers/scsi/lpfc/lpfc_scsi.c
360
iocb->ulpLe = 1;
drivers/scsi/lpfc/lpfc_scsi.c
362
iocb->ulpClass = CLASS3;
drivers/scsi/lpfc/lpfc_scsi.c
4176
lpfc_cmd->cur_iocbq.iocb.ulpIoTag);
drivers/scsi/lpfc/lpfc_scsi.c
4245
lpfc_cmd->cur_iocbq.iocb.ulpIoTag);
drivers/scsi/lpfc/lpfc_scsi.c
4379
lpfc_cmd->result = (pIocbOut->iocb.un.ulpWord[4] & IOERR_PARAM_MASK);
drivers/scsi/lpfc/lpfc_scsi.c
4380
lpfc_cmd->status = pIocbOut->iocb.ulpStatus;
drivers/scsi/lpfc/lpfc_scsi.c
4444
pIocbOut->iocb.ulpContext,
drivers/scsi/lpfc/lpfc_scsi.c
4445
lpfc_cmd->cur_iocbq.iocb.ulpIoTag);
drivers/scsi/lpfc/lpfc_scsi.c
4451
pIocbOut->iocb.un.fcpi.fcpi_parm);
drivers/scsi/lpfc/lpfc_scsi.c
4501
pIocbOut->iocb.unsli3.sli3_bg.bgstat) {
drivers/scsi/lpfc/lpfc_scsi.c
4615
IOCB_t *iocb_cmd = &lpfc_cmd->cur_iocbq.iocb;
drivers/scsi/lpfc/lpfc_scsi.c
4623
piocbq->iocb.un.fcpi.fcpi_XRdy = 0;
drivers/scsi/lpfc/lpfc_scsi.c
4642
piocbq->iocb.un.fcpi.fcpi_XRdy = xrdy_len;
drivers/scsi/lpfc/lpfc_scsi.c
4661
piocbq->iocb.ulpContext = pnode->nlp_rpi;
drivers/scsi/lpfc/lpfc_scsi.c
4663
piocbq->iocb.ulpFCP2Rcvy = 1;
drivers/scsi/lpfc/lpfc_scsi.c
4665
piocbq->iocb.ulpFCP2Rcvy = 0;
drivers/scsi/lpfc/lpfc_scsi.c
4667
piocbq->iocb.ulpClass = (pnode->nlp_fcp_info & NLP_FCP_CLASS_MASK);
drivers/scsi/lpfc/lpfc_scsi.c
4671
piocbq->iocb.ulpTimeout = tmo;
drivers/scsi/lpfc/lpfc_scsi.c
4867
piocb = &piocbq->iocb;
drivers/scsi/lpfc/lpfc_scsi.c
5423
cur_iocbq->iocb.ulpContext,
drivers/scsi/lpfc/lpfc_scsi.c
5428
cur_iocbq->iocb.ulpTimeout,
drivers/scsi/lpfc/lpfc_scsi.c
5528
struct lpfc_iocbq *iocb;
drivers/scsi/lpfc/lpfc_scsi.c
5566
iocb = &lpfc_cmd->cur_iocbq;
drivers/scsi/lpfc/lpfc_scsi.c
5569
if (!phba->sli4_hba.hdwq[iocb->hba_wqidx].io_wq ||
drivers/scsi/lpfc/lpfc_scsi.c
5570
!phba->sli4_hba.hdwq[iocb->hba_wqidx].io_wq->pring) {
drivers/scsi/lpfc/lpfc_scsi.c
5581
pring_s4 = phba->sli4_hba.hdwq[iocb->hba_wqidx].io_wq->pring;
drivers/scsi/lpfc/lpfc_scsi.c
5585
if (!(iocb->cmd_flag & LPFC_IO_ON_TXCMPLQ)) {
drivers/scsi/lpfc/lpfc_scsi.c
5605
WARN_ON(iocb->io_buf != lpfc_cmd);
drivers/scsi/lpfc/lpfc_scsi.c
5608
if (iocb->cmd_flag & LPFC_DRIVER_ABORTED) {
drivers/scsi/lpfc/lpfc_scsi.c
5621
ret_val = lpfc_sli4_issue_abort_iotag(phba, iocb,
drivers/scsi/lpfc/lpfc_scsi.c
5625
ret_val = lpfc_sli_issue_abort_iotag(phba, pring, iocb,
drivers/scsi/lpfc/lpfc_scsi.c
5663
iocb->sli4_xritag, ret,
drivers/scsi/lpfc/lpfc_scsi.c
818
IOCB_t *iocb_cmd = &lpfc_cmd->cur_iocbq.iocb;
drivers/scsi/lpfc/lpfc_sli.c
10468
IOCB_t *iocb;
drivers/scsi/lpfc/lpfc_sli.c
10474
(piocb->iocb.ulpCommand != CMD_ABORT_XRI_CN) &&
drivers/scsi/lpfc/lpfc_sli.c
10475
(piocb->iocb.ulpCommand != CMD_CLOSE_XRI_CN)) {
drivers/scsi/lpfc/lpfc_sli.c
10478
piocb->iocb.ulpCommand);
drivers/scsi/lpfc/lpfc_sli.c
10510
switch (piocb->iocb.ulpCommand) {
drivers/scsi/lpfc/lpfc_sli.c
10537
while ((iocb = lpfc_sli_next_iocb_slot(phba, pring)) &&
drivers/scsi/lpfc/lpfc_sli.c
10539
lpfc_sli_submit_iocb(phba, pring, iocb, nextiocb);
drivers/scsi/lpfc/lpfc_sli.c
10541
if (iocb)
drivers/scsi/lpfc/lpfc_sli.c
10817
cmd = &cmdiocbq->iocb;
drivers/scsi/lpfc/lpfc_sli.c
10964
cmd = &cmdiocbq->iocb;
drivers/scsi/lpfc/lpfc_sli.c
11053
icmd = &cmdiocbq->iocb;
drivers/scsi/lpfc/lpfc_sli.c
11153
icmd = &cmdiocbq->iocb;
drivers/scsi/lpfc/lpfc_sli.c
11464
vpi = iocbq->iocb.un.asyncstat.sub_ctxt_tag;
drivers/scsi/lpfc/lpfc_sli.c
11465
rpi = iocbq->iocb.ulpContext;
drivers/scsi/lpfc/lpfc_sli.c
11470
vpi, rpi, iocbq->iocb.ulpStatus);
drivers/scsi/lpfc/lpfc_sli.c
11479
if (iocbq->iocb.ulpStatus == IOSTAT_LOCAL_REJECT)
drivers/scsi/lpfc/lpfc_sli.c
11487
vpi, rpi, iocbq->iocb.ulpStatus,
drivers/scsi/lpfc/lpfc_sli.c
11488
iocbq->iocb.ulpContext);
drivers/scsi/lpfc/lpfc_sli.c
11557
icmd = &iocbq->iocb;
drivers/scsi/lpfc/lpfc_sli.c
11951
struct lpfc_iocbq *iocb, *next_iocb;
drivers/scsi/lpfc/lpfc_sli.c
11975
list_for_each_entry_safe(iocb, next_iocb,
drivers/scsi/lpfc/lpfc_sli.c
11977
if (iocb->vport != vport)
drivers/scsi/lpfc/lpfc_sli.c
11979
list_move_tail(&iocb->list, &completions);
drivers/scsi/lpfc/lpfc_sli.c
11981
list_for_each_entry_safe(iocb, next_iocb,
drivers/scsi/lpfc/lpfc_sli.c
11983
if (iocb->vport != vport)
drivers/scsi/lpfc/lpfc_sli.c
11985
lpfc_sli_issue_abort_iotag(phba, pring, iocb,
drivers/scsi/lpfc/lpfc_sli.c
12002
list_for_each_entry_safe(iocb, next_iocb,
drivers/scsi/lpfc/lpfc_sli.c
12004
if (iocb->vport != vport)
drivers/scsi/lpfc/lpfc_sli.c
12006
list_move_tail(&iocb->list, &completions);
drivers/scsi/lpfc/lpfc_sli.c
12009
list_for_each_entry_safe(iocb, next_iocb,
drivers/scsi/lpfc/lpfc_sli.c
12011
if (iocb->vport != vport)
drivers/scsi/lpfc/lpfc_sli.c
12013
lpfc_sli_issue_abort_iotag(phba, pring, iocb,
drivers/scsi/lpfc/lpfc_sli.c
12360
cmdiocb->iocb.ulpIoTag,
drivers/scsi/lpfc/lpfc_sli.c
12394
irsp = &rspiocb->iocb;
drivers/scsi/lpfc/lpfc_sli.c
12492
iotag = cmdiocb->iocb.ulpIoTag;
drivers/scsi/lpfc/lpfc_sli.c
12497
ulp_context = cmdiocb->iocb.ulpContext;
drivers/scsi/lpfc/lpfc_sli.c
12512
cmdiocb->iocb.ulpClass,
drivers/scsi/lpfc/lpfc_sli.c
12770
cmdiocb->iocb.un.acxri.abortContextTag,
drivers/scsi/lpfc/lpfc_sli.c
12949
iotag = iocbq->iocb.ulpIoTag;
drivers/scsi/lpfc/lpfc_sli.c
12954
ulp_context = iocbq->iocb.ulpContext;
drivers/scsi/lpfc/lpfc_sli.c
12968
iocbq->iocb.ulpClass, cqid,
drivers/scsi/lpfc/lpfc_sli.c
13152
struct lpfc_iocbq *iocb;
drivers/scsi/lpfc/lpfc_sli.c
13229
list_for_each_entry(iocb, &pring->txq, list) {
drivers/scsi/lpfc/lpfc_sli.c
13232
list_for_each_entry(iocb, &pring->txcmplq, list) {
drivers/scsi/lpfc/lpfc_sli.c
1455
memset_startat(iocbq, 0, iocb);
drivers/scsi/lpfc/lpfc_sli.c
1530
piocb->iocb.ulpStatus = ulpstatus;
drivers/scsi/lpfc/lpfc_sli.c
1531
piocb->iocb.un.ulpWord[4] = ulpWord4;
drivers/scsi/lpfc/lpfc_sli.c
18978
if (rsp_iocbq && rsp_iocbq->iocb.ulpStatus)
drivers/scsi/lpfc/lpfc_sli.c
21308
pwqeq->iocb.ulpIoTag = pwqeq->iotag;
drivers/scsi/lpfc/lpfc_sli.c
2189
IOCB_t *iocb, struct lpfc_iocbq *nextiocb)
drivers/scsi/lpfc/lpfc_sli.c
2194
nextiocb->iocb.ulpIoTag = (nextiocb->cmd_cmpl) ? nextiocb->iotag : 0;
drivers/scsi/lpfc/lpfc_sli.c
2200
*(((uint32_t *) &nextiocb->iocb) + 4),
drivers/scsi/lpfc/lpfc_sli.c
2201
*(((uint32_t *) &nextiocb->iocb) + 6),
drivers/scsi/lpfc/lpfc_sli.c
2202
*(((uint32_t *) &nextiocb->iocb) + 7));
drivers/scsi/lpfc/lpfc_sli.c
2208
lpfc_sli_pcimem_bcopy(&nextiocb->iocb, iocb, phba->iocb_cmd_size);
drivers/scsi/lpfc/lpfc_sli.c
2297
IOCB_t *iocb;
drivers/scsi/lpfc/lpfc_sli.c
2315
while ((iocb = lpfc_sli_next_iocb_slot(phba, pring)) &&
drivers/scsi/lpfc/lpfc_sli.c
2317
lpfc_sli_submit_iocb(phba, pring, iocb, nextiocb);
drivers/scsi/lpfc/lpfc_sli.c
2319
if (iocb)
drivers/scsi/lpfc/lpfc_sli.c
3377
irsp = &saveq->iocb;
drivers/scsi/lpfc/lpfc_sli.c
3444
irsp = &saveq->iocb;
drivers/scsi/lpfc/lpfc_sli.c
3511
irsp = &iocbq->iocb;
drivers/scsi/lpfc/lpfc_sli.c
3561
if (iocbq->iocb.unsli3.rcvsli3.ox_id ==
drivers/scsi/lpfc/lpfc_sli.c
3562
saveq->iocb.unsli3.rcvsli3.ox_id) {
drivers/scsi/lpfc/lpfc_sli.c
3572
if (saveq->iocb.ulpStatus != IOSTAT_INTERMED_RSP) {
drivers/scsi/lpfc/lpfc_sli.c
3575
irsp = &saveq->iocb;
drivers/scsi/lpfc/lpfc_sli.c
3586
w5p = (WORD5 *)&(saveq->iocb.un.ulpWord[5]);
drivers/scsi/lpfc/lpfc_sli.c
3647
iotag = prspiocb->iocb.ulpIoTag;
drivers/scsi/lpfc/lpfc_sli.c
3746
iotag = saveq->iocb.ulpIoTag;
drivers/scsi/lpfc/lpfc_sli.c
3775
saveq->iocb.ulpStatus =
drivers/scsi/lpfc/lpfc_sli.c
3777
saveq->iocb.un.ulpWord[4] =
drivers/scsi/lpfc/lpfc_sli.c
4035
(uint32_t *) &rspiocbq.iocb,
drivers/scsi/lpfc/lpfc_sli.c
4038
irsp = &rspiocbq.iocb;
drivers/scsi/lpfc/lpfc_sli.c
4231
irsp = &rspiocbp->iocb;
drivers/scsi/lpfc/lpfc_sli.c
4437
lpfc_sli_pcimem_bcopy(entry, &rspiocbp->iocb,
drivers/scsi/lpfc/lpfc_sli.c
4439
irsp = &rspiocbp->iocb;
drivers/scsi/lpfc/lpfc_sli.c
4569
struct lpfc_iocbq *iocb, *next_iocb;
drivers/scsi/lpfc/lpfc_sli.c
4589
list_for_each_entry_safe(iocb, next_iocb, &pring->txcmplq, list)
drivers/scsi/lpfc/lpfc_sli.c
4590
iocb->cmd_flag &= ~LPFC_IO_ON_TXCMPLQ;
drivers/scsi/lpfc/lpfc_sli.c
4595
list_for_each_entry_safe(iocb, next_iocb, &pring->txcmplq, list)
drivers/scsi/lpfc/lpfc_sli.c
4596
lpfc_sli_issue_abort_iotag(phba, pring, iocb, NULL);
drivers/scsi/lpfc/lpfc_sli.h
81
IOCB_t iocb; /* SLI-3 */
drivers/scsi/qla2xxx/qla_def.h
2545
struct imm_ntfy_from_isp iocb;
drivers/scsi/qla2xxx/qla_def.h
2696
u8 iocb[IOCB_SIZE];
drivers/scsi/qla2xxx/qla_def.h
3625
u8 iocb[IOCB_SIZE];
drivers/scsi/qla2xxx/qla_def.h
4917
uint8_t iocb[64];
drivers/scsi/qla2xxx/qla_def.h
4918
} iocb;
drivers/scsi/qla2xxx/qla_def.h
499
void *iocb;
drivers/scsi/qla2xxx/qla_gs.c
213
arg.iocb = ha->ms_iocb;
drivers/scsi/qla2xxx/qla_gs.c
2541
arg.iocb = ha->ms_iocb;
drivers/scsi/qla2xxx/qla_gs.c
2657
arg.iocb = ha->ms_iocb;
drivers/scsi/qla2xxx/qla_gs.c
305
arg.iocb = ha->ms_iocb;
drivers/scsi/qla2xxx/qla_gs.c
36
ms_pkt = (ms_iocb_entry_t *)arg->iocb;
drivers/scsi/qla2xxx/qla_gs.c
383
arg.iocb = ha->ms_iocb;
drivers/scsi/qla2xxx/qla_gs.c
450
arg.iocb = ha->ms_iocb;
drivers/scsi/qla2xxx/qla_gs.c
73
ct_pkt = (struct ct_entry_24xx *)arg->iocb;
drivers/scsi/qla2xxx/qla_init.c
49
struct srb_iocb *iocb;
drivers/scsi/qla2xxx/qla_init.c
53
iocb = &sp->u.iocb_cmd;
drivers/scsi/qla2xxx/qla_init.c
54
iocb->timeout(sp);
drivers/scsi/qla2xxx/qla_init.c
68
struct srb_iocb *iocb = &sp->u.iocb_cmd;
drivers/scsi/qla2xxx/qla_init.c
70
timer_delete(&iocb->timer);
drivers/scsi/qla2xxx/qla_iocb.c
2547
struct srb_iocb *iocb = &sp->u.iocb_cmd;
drivers/scsi/qla2xxx/qla_iocb.c
2550
flags = iocb->u.tmf.flags;
drivers/scsi/qla2xxx/qla_iocb.c
2551
lun = iocb->u.tmf.lun;
drivers/scsi/qla2xxx/qla_iocb.c
3734
sp->u.iocb_cmd.u.ctarg.iocb = ct_pkt;
drivers/scsi/qla2xxx/qla_isr.c
1143
memcpy(&item->iocb, pkt, sizeof(item->iocb));
drivers/scsi/qla2xxx/qla_isr.c
1170
if (total_bytes > sizeof(item->iocb.iocb))
drivers/scsi/qla2xxx/qla_isr.c
1171
total_bytes = sizeof(item->iocb.iocb);
drivers/scsi/qla2xxx/qla_isr.c
1185
fpin_pkt = &item->iocb;
drivers/scsi/qla2xxx/qla_isr.c
1252
host_to_fcp_swap((uint8_t *)&item->iocb, total_bytes);
drivers/scsi/qla2xxx/qla_isr.c
2040
struct req_que *req, void *iocb, u16 *ret_index)
drivers/scsi/qla2xxx/qla_isr.c
2043
sts_entry_t *pkt = iocb;
drivers/scsi/qla2xxx/qla_isr.c
2054
func, index, iocb);
drivers/scsi/qla2xxx/qla_isr.c
2082
struct req_que *req, void *iocb)
drivers/scsi/qla2xxx/qla_isr.c
2087
sp = qla_get_sp_from_handle(vha, func, req, iocb, &index);
drivers/scsi/qla2xxx/qla_isr.c
2670
struct srb_iocb *iocb;
drivers/scsi/qla2xxx/qla_isr.c
2679
iocb = &sp->u.iocb_cmd;
drivers/scsi/qla2xxx/qla_isr.c
2682
iocb->u.tmf.data = QLA_SUCCESS;
drivers/scsi/qla2xxx/qla_isr.c
2688
iocb->u.tmf.data = QLA_FUNCTION_FAILED;
drivers/scsi/qla2xxx/qla_isr.c
2693
iocb->u.tmf.data = QLA_FUNCTION_FAILED;
drivers/scsi/qla2xxx/qla_isr.c
2705
iocb->u.tmf.data = QLA_FUNCTION_FAILED;
drivers/scsi/qla2xxx/qla_isr.c
2732
if (iocb->u.tmf.data != QLA_SUCCESS)
drivers/scsi/qla2xxx/qla_isr.c
2743
struct srb_iocb *iocb;
drivers/scsi/qla2xxx/qla_isr.c
2751
iocb = &sp->u.iocb_cmd;
drivers/scsi/qla2xxx/qla_isr.c
2753
iocb->u.nvme.comp_status = comp_status;
drivers/scsi/qla2xxx/qla_isr.c
2755
fd = iocb->u.nvme.desc;
drivers/scsi/qla2xxx/qla_isr.c
2757
if (unlikely(iocb->u.nvme.aen_op))
drivers/scsi/qla2xxx/qla_isr.c
2777
iocb->u.nvme.rsp_pyld_len = 0;
drivers/scsi/qla2xxx/qla_isr.c
2781
iocb->u.nvme.rsp_pyld_len = sts->nvme_rsp_pyld_len;
drivers/scsi/qla2xxx/qla_isr.c
2787
iocb->u.nvme.rsp_pyld_len = 0;
drivers/scsi/qla2xxx/qla_isr.c
2798
iocb->u.nvme.rsp_pyld_len = sts->nvme_rsp_pyld_len;
drivers/scsi/qla2xxx/qla_isr.c
2799
if (unlikely(le16_to_cpu(iocb->u.nvme.rsp_pyld_len) >
drivers/scsi/qla2xxx/qla_isr.c
2803
iocb->u.nvme.rsp_pyld_len);
drivers/scsi/qla2xxx/qla_isr.c
2806
iocb->u.nvme.rsp_pyld_len);
drivers/scsi/qla2xxx/qla_isr.c
2808
iocb->u.nvme.rsp_pyld_len =
drivers/scsi/qla2xxx/qla_isr.c
2811
iter = le16_to_cpu(iocb->u.nvme.rsp_pyld_len) >> 2;
drivers/scsi/qla2xxx/qla_isr.c
2867
iocb->u.nvme.rsp_pyld_len = 0;
drivers/scsi/qla2xxx/qla_isr.c
37
void *pkt = &item->iocb;
drivers/scsi/qla2xxx/qla_isr.c
79
(struct abts_entry_24xx *)&pkt->iocb;
drivers/scsi/qla2xxx/qla_isr.c
881
if (total_bytes > sizeof(item->iocb.iocb))
drivers/scsi/qla2xxx/qla_isr.c
882
total_bytes = sizeof(item->iocb.iocb);
drivers/scsi/qla2xxx/qla_isr.c
895
iocb_pkt = &item->iocb;
drivers/scsi/qla2xxx/qla_isr.c
969
host_to_fcp_swap((uint8_t *)&item->iocb, total_bytes);
drivers/scsi/qla2xxx/qla_nvme.c
1190
&item->iocb, item->size);
drivers/scsi/qla2xxx/qla_nvme.c
1311
item->iocb.iocb[3], item->size, uctx->exchange_address,
drivers/scsi/qla2xxx/qla_nvme.c
1320
&item->iocb, item->size);
drivers/scsi/qla2xxx/qla_os.c
5309
pla->iocb.u.isp24.u.plogi.node_name,
drivers/scsi/qla2xxx/qla_os.c
5387
if (pla->iocb.u.isp24.status_subcode == ELS_PRLI) {
drivers/scsi/qla2xxx/qla_os.c
5394
pla->iocb.u.isp24.nport_handle);
drivers/scsi/qla2xxx/qla_os.c
5398
pla->iocb.u.isp24.u.prli.wd3_lo);
drivers/scsi/qla2xxx/qla_os.c
6063
(struct purex_entry_24xx *)&item->iocb;
drivers/scsi/qla2xxx/qla_target.c
1008
(!own || own->iocb.u.isp24.status_subcode == ELS_PLOGI)) {
drivers/scsi/qla2xxx/qla_target.c
106
int fn, void *iocb, int flags);
drivers/scsi/qla2xxx/qla_target.c
1071
(struct imm_ntfy_from_isp *)sess->iocb, SRB_NACK_LOGO);
drivers/scsi/qla2xxx/qla_target.c
1101
struct imm_ntfy_from_isp *iocb;
drivers/scsi/qla2xxx/qla_target.c
1106
iocb = &con->iocb;
drivers/scsi/qla2xxx/qla_target.c
1113
iocb->u.isp24.port_name, con->ref_count);
drivers/scsi/qla2xxx/qla_target.c
1205
static int qlt_reset(struct scsi_qla_host *vha, void *iocb, int mcmd)
drivers/scsi/qla2xxx/qla_target.c
1211
struct imm_ntfy_from_isp *n = (struct imm_ntfy_from_isp *)iocb;
drivers/scsi/qla2xxx/qla_target.c
1239
return qlt_issue_task_mgmt(sess, 0, mcmd, iocb, QLA24XX_MGMT_SEND_NACK);
drivers/scsi/qla2xxx/qla_target.c
4752
int fn, void *iocb, int flags)
drivers/scsi/qla2xxx/qla_target.c
4757
struct atio_from_isp *a = (struct atio_from_isp *)iocb;
drivers/scsi/qla2xxx/qla_target.c
4771
if (iocb) {
drivers/scsi/qla2xxx/qla_target.c
4772
memcpy(&mcmd->orig_iocb.imm_ntfy, iocb,
drivers/scsi/qla2xxx/qla_target.c
4812
static int qlt_handle_task_mgmt(struct scsi_qla_host *vha, void *iocb)
drivers/scsi/qla2xxx/qla_target.c
4814
struct atio_from_isp *a = (struct atio_from_isp *)iocb;
drivers/scsi/qla2xxx/qla_target.c
4834
return qlt_issue_task_mgmt(sess, unpacked_lun, fn, iocb, 0);
drivers/scsi/qla2xxx/qla_target.c
4839
struct imm_ntfy_from_isp *iocb, struct fc_port *sess)
drivers/scsi/qla2xxx/qla_target.c
4841
struct atio_from_isp *a = (struct atio_from_isp *)iocb;
drivers/scsi/qla2xxx/qla_target.c
4857
memcpy(&mcmd->orig_iocb.imm_ntfy, iocb,
drivers/scsi/qla2xxx/qla_target.c
4867
le16_to_cpu(iocb->u.isp2x.seq_id));
drivers/scsi/qla2xxx/qla_target.c
4881
struct imm_ntfy_from_isp *iocb)
drivers/scsi/qla2xxx/qla_target.c
4888
loop_id = GET_TARGET_ID(ha, (struct atio_from_isp *)iocb);
drivers/scsi/qla2xxx/qla_target.c
4899
QLA_TGT_SESS_WORK_ABORT, iocb, sizeof(*iocb));
drivers/scsi/qla2xxx/qla_target.c
4902
return __qlt_abort_task(vha, iocb, sess);
drivers/scsi/qla2xxx/qla_target.c
5033
struct imm_ntfy_from_isp *iocb)
drivers/scsi/qla2xxx/qla_target.c
5045
wwn = wwn_to_u64(iocb->u.isp24.port_name);
drivers/scsi/qla2xxx/qla_target.c
5047
port_id.b.domain = iocb->u.isp24.port_id[2];
drivers/scsi/qla2xxx/qla_target.c
5048
port_id.b.area = iocb->u.isp24.port_id[1];
drivers/scsi/qla2xxx/qla_target.c
5049
port_id.b.al_pa = iocb->u.isp24.port_id[0];
drivers/scsi/qla2xxx/qla_target.c
5052
loop_id = le16_to_cpu(iocb->u.isp24.nport_handle);
drivers/scsi/qla2xxx/qla_target.c
5066
qlt_send_term_imm_notif(vha, iocb, 1);
drivers/scsi/qla2xxx/qla_target.c
5077
iocb->u.isp24.status_subcode == ELS_PLOGI &&
drivers/scsi/qla2xxx/qla_target.c
5078
!(le16_to_cpu(iocb->u.isp24.flags) & NOTIFY24XX_FLAGS_FCSP)) {
drivers/scsi/qla2xxx/qla_target.c
5082
qlt_send_term_imm_notif(vha, iocb, 1);
drivers/scsi/qla2xxx/qla_target.c
5091
qlt_send_term_imm_notif(vha, iocb, 1);
drivers/scsi/qla2xxx/qla_target.c
5093
} else if (iocb->u.isp24.status_subcode == ELS_PLOGI &&
drivers/scsi/qla2xxx/qla_target.c
5094
!(le16_to_cpu(iocb->u.isp24.flags) & NOTIFY24XX_FLAGS_FCSP)) {
drivers/scsi/qla2xxx/qla_target.c
5098
qlt_send_term_imm_notif(vha, iocb, 1);
drivers/scsi/qla2xxx/qla_target.c
5103
pla = qlt_plogi_ack_find_add(vha, &port_id, iocb);
drivers/scsi/qla2xxx/qla_target.c
5108
iocb->u.isp24.port_name);
drivers/scsi/qla2xxx/qla_target.c
5109
qlt_send_term_imm_notif(vha, iocb, 1);
drivers/scsi/qla2xxx/qla_target.c
5123
__func__, __LINE__, iocb->u.isp24.port_name);
drivers/scsi/qla2xxx/qla_target.c
5124
if (iocb->u.isp24.status_subcode == ELS_PLOGI)
drivers/scsi/qla2xxx/qla_target.c
5126
iocb->u.isp24.port_name,
drivers/scsi/qla2xxx/qla_target.c
5127
iocb->u.isp24.u.plogi.node_name,
drivers/scsi/qla2xxx/qla_target.c
5131
iocb->u.isp24.port_name, NULL,
drivers/scsi/qla2xxx/qla_target.c
5161
qlt_send_term_imm_notif(vha, iocb, 1);
drivers/scsi/qla2xxx/qla_target.c
5170
if (iocb->u.isp24.status_subcode == ELS_PLOGI) {
drivers/scsi/qla2xxx/qla_target.c
5183
if (iocb->u.isp24.status_subcode == ELS_PRLI) {
drivers/scsi/qla2xxx/qla_target.c
5189
wd3_lo = le16_to_cpu(iocb->u.isp24.u.prli.wd3_lo);
drivers/scsi/qla2xxx/qla_target.c
525
memcpy(e->u.nack.iocb, ntfy, sizeof(struct imm_ntfy_from_isp));
drivers/scsi/qla2xxx/qla_target.c
5313
const struct imm_ntfy_from_isp *iocb)
drivers/scsi/qla2xxx/qla_target.c
5318
uint32_t tag = le32_to_cpu(iocb->u.isp24.exchange_address);
drivers/scsi/qla2xxx/qla_target.c
5330
loop_id = le16_to_cpu(iocb->u.isp24.nport_handle);
drivers/scsi/qla2xxx/qla_target.c
5332
s_id.domain = iocb->u.isp24.port_id[2];
drivers/scsi/qla2xxx/qla_target.c
5333
s_id.area = iocb->u.isp24.port_id[1];
drivers/scsi/qla2xxx/qla_target.c
5334
s_id.al_pa = iocb->u.isp24.port_id[0];
drivers/scsi/qla2xxx/qla_target.c
5355
u16 srr_ox_id = le16_to_cpu(iocb->u.isp24.srr_ox_id);
drivers/scsi/qla2xxx/qla_target.c
5550
struct imm_ntfy_from_isp *iocb)
drivers/scsi/qla2xxx/qla_target.c
5568
memcpy(&srr->imm_ntfy, iocb, sizeof(srr->imm_ntfy));
drivers/scsi/qla2xxx/qla_target.c
5579
qlt_send_notify_ack(vha->hw->base_qpair, iocb, 0, 0, 0,
drivers/scsi/qla2xxx/qla_target.c
6108
struct imm_ntfy_from_isp *iocb)
drivers/scsi/qla2xxx/qla_target.c
6122
wwn = wwn_to_u64(iocb->u.isp24.port_name);
drivers/scsi/qla2xxx/qla_target.c
6124
port_id.b.domain = iocb->u.isp24.port_id[2];
drivers/scsi/qla2xxx/qla_target.c
6125
port_id.b.area = iocb->u.isp24.port_id[1];
drivers/scsi/qla2xxx/qla_target.c
6126
port_id.b.al_pa = iocb->u.isp24.port_id[0];
drivers/scsi/qla2xxx/qla_target.c
6129
loop_id = le16_to_cpu(iocb->u.isp24.nport_handle);
drivers/scsi/qla2xxx/qla_target.c
6133
vha->vp_idx, iocb->u.isp24.port_id[2],
drivers/scsi/qla2xxx/qla_target.c
6134
iocb->u.isp24.port_id[1], iocb->u.isp24.port_id[0],
drivers/scsi/qla2xxx/qla_target.c
6135
iocb->u.isp24.status_subcode, loop_id,
drivers/scsi/qla2xxx/qla_target.c
6136
iocb->u.isp24.port_name);
drivers/scsi/qla2xxx/qla_target.c
6141
switch (iocb->u.isp24.status_subcode) {
drivers/scsi/qla2xxx/qla_target.c
6143
res = qlt_handle_login(vha, iocb);
drivers/scsi/qla2xxx/qla_target.c
6149
iocb->u.isp24.port_name, 1);
drivers/scsi/qla2xxx/qla_target.c
6156
__func__, __LINE__, iocb->u.isp24.port_name);
drivers/scsi/qla2xxx/qla_target.c
6157
qlt_send_term_imm_notif(vha, iocb, 1);
drivers/scsi/qla2xxx/qla_target.c
6165
iocb->u.isp24.port_name);
drivers/scsi/qla2xxx/qla_target.c
6166
qlt_send_term_imm_notif(vha, iocb, 1);
drivers/scsi/qla2xxx/qla_target.c
6170
res = qlt_handle_login(vha, iocb);
drivers/scsi/qla2xxx/qla_target.c
6179
wd3_lo = le16_to_cpu(iocb->u.isp24.u.prli.wd3_lo);
drivers/scsi/qla2xxx/qla_target.c
6199
qlt_send_term_imm_notif(vha, iocb, 1);
drivers/scsi/qla2xxx/qla_target.c
6214
__func__, __LINE__, iocb->u.isp24.port_name);
drivers/scsi/qla2xxx/qla_target.c
6215
qlt_send_term_imm_notif(vha, iocb, 1);
drivers/scsi/qla2xxx/qla_target.c
6244
qlt_send_term_imm_notif(vha, iocb, 1);
drivers/scsi/qla2xxx/qla_target.c
6268
qlt_send_term_imm_notif(vha, iocb, 1);
drivers/scsi/qla2xxx/qla_target.c
6279
sess->loop_id, sess, iocb->u.isp24.nport_handle);
drivers/scsi/qla2xxx/qla_target.c
6304
qla24xx_post_nack_work(vha, sess, iocb,
drivers/scsi/qla2xxx/qla_target.c
6317
qla24xx_post_nack_work(vha, sess, iocb,
drivers/scsi/qla2xxx/qla_target.c
6325
if (le16_to_cpu(iocb->u.isp24.flags) &
drivers/scsi/qla2xxx/qla_target.c
6328
qlt_reset(vha, iocb, QLA_TGT_NEXUS_LOSS);
drivers/scsi/qla2xxx/qla_target.c
6343
memcpy(sess->iocb, iocb, IOCB_SIZE);
drivers/scsi/qla2xxx/qla_target.c
6346
res = qlt_reset(vha, iocb, QLA_TGT_NEXUS_LOSS_SESS);
drivers/scsi/qla2xxx/qla_target.c
6379
iocb->u.isp24.port_name, 1);
drivers/scsi/qla2xxx/qla_target.c
6395
"received\n", vha->vp_idx, iocb->u.isp24.status_subcode);
drivers/scsi/qla2xxx/qla_target.c
6396
res = qlt_reset(vha, iocb, QLA_TGT_NEXUS_LOSS_SESS);
drivers/scsi/qla2xxx/qla_target.c
6402
vha->vp_idx, iocb->u.isp24.status_subcode, res);
drivers/scsi/qla2xxx/qla_target.c
6412
struct imm_ntfy_from_isp *iocb)
drivers/scsi/qla2xxx/qla_target.c
6421
status = le16_to_cpu(iocb->u.isp2x.status);
drivers/scsi/qla2xxx/qla_target.c
6427
vha->vp_idx, le16_to_cpu(iocb->u.isp24.nport_handle),
drivers/scsi/qla2xxx/qla_target.c
6428
iocb->u.isp24.status_subcode);
drivers/scsi/qla2xxx/qla_target.c
6430
if (qlt_reset(vha, iocb, QLA_TGT_ABORT_ALL) == 0)
drivers/scsi/qla2xxx/qla_target.c
6442
le16_to_cpu(iocb->u.isp24.nport_handle),
drivers/scsi/qla2xxx/qla_target.c
6443
iocb->u.isp24.status_subcode);
drivers/scsi/qla2xxx/qla_target.c
6448
memcpy(&tgt->link_reinit_iocb, iocb, sizeof(*iocb));
drivers/scsi/qla2xxx/qla_target.c
6462
le16_to_cpu(iocb->u.isp24.nport_handle),
drivers/scsi/qla2xxx/qla_target.c
6463
iocb->u.isp24.status_subcode);
drivers/scsi/qla2xxx/qla_target.c
6465
if (qlt_reset(vha, iocb, QLA_TGT_NEXUS_LOSS_SESS) == 0)
drivers/scsi/qla2xxx/qla_target.c
6473
if (qlt_reset(vha, iocb, QLA_TGT_NEXUS_LOSS) == 0)
drivers/scsi/qla2xxx/qla_target.c
6482
if (qlt_reset(vha, iocb, QLA_TGT_ABORT_ALL) == 0)
drivers/scsi/qla2xxx/qla_target.c
6492
if (qlt_reset(vha, iocb, QLA_TGT_NEXUS_LOSS) == 0)
drivers/scsi/qla2xxx/qla_target.c
6507
le16_to_cpu(iocb->u.isp2x.seq_id),
drivers/scsi/qla2xxx/qla_target.c
6508
GET_TARGET_ID(ha, (struct atio_from_isp *)iocb),
drivers/scsi/qla2xxx/qla_target.c
6509
le16_to_cpu(iocb->u.isp2x.lun));
drivers/scsi/qla2xxx/qla_target.c
6510
if (qlt_abort_task(vha, iocb) == 0)
drivers/scsi/qla2xxx/qla_target.c
6523
vha->vp_idx, iocb->u.isp2x.task_flags);
drivers/scsi/qla2xxx/qla_target.c
6527
if (qlt_24xx_handle_els(vha, iocb) == 0)
drivers/scsi/qla2xxx/qla_target.c
6532
qlt_prepare_srr_imm(vha, iocb);
drivers/scsi/qla2xxx/qla_target.c
6544
qlt_send_notify_ack(ha->base_qpair, iocb, add_flags, 0, 0, 0,
drivers/scsi/qla2xxx/qla_target.c
672
(struct imm_ntfy_from_isp *)e->u.nack.iocb, e->u.nack.type);
drivers/scsi/qla2xxx/qla_target.c
771
struct imm_ntfy_from_isp *iocb)
drivers/scsi/qla2xxx/qla_target.c
782
pla->iocb.u.isp24.port_name);
drivers/scsi/qla2xxx/qla_target.c
783
qlt_send_term_imm_notif(vha, &pla->iocb, 1);
drivers/scsi/qla2xxx/qla_target.c
784
memcpy(&pla->iocb, iocb, sizeof(pla->iocb));
drivers/scsi/qla2xxx/qla_target.c
797
memcpy(&pla->iocb, iocb, sizeof(pla->iocb));
drivers/scsi/qla2xxx/qla_target.c
807
struct imm_ntfy_from_isp *iocb = &pla->iocb;
drivers/scsi/qla2xxx/qla_target.c
820
" exch %#x ox_id %#x\n", iocb->u.isp24.port_name,
drivers/scsi/qla2xxx/qla_target.c
821
iocb->u.isp24.port_id[2], iocb->u.isp24.port_id[1],
drivers/scsi/qla2xxx/qla_target.c
822
iocb->u.isp24.port_id[0],
drivers/scsi/qla2xxx/qla_target.c
823
le16_to_cpu(iocb->u.isp24.nport_handle),
drivers/scsi/qla2xxx/qla_target.c
824
iocb->u.isp24.exchange_address, iocb->ox_id);
drivers/scsi/qla2xxx/qla_target.c
826
port_id.b.domain = iocb->u.isp24.port_id[2];
drivers/scsi/qla2xxx/qla_target.c
827
port_id.b.area = iocb->u.isp24.port_id[1];
drivers/scsi/qla2xxx/qla_target.c
828
port_id.b.al_pa = iocb->u.isp24.port_id[0];
drivers/scsi/qla2xxx/qla_target.c
831
loop_id = le16_to_cpu(iocb->u.isp24.nport_handle);
drivers/scsi/qla2xxx/qla_target.c
835
if (iocb->u.isp24.status_subcode == ELS_PLOGI)
drivers/scsi/qla2xxx/qla_target.c
836
qla24xx_post_nack_work(vha, fcport, iocb, SRB_NACK_PLOGI);
drivers/scsi/qla2xxx/qla_target.c
838
qla24xx_post_nack_work(vha, fcport, iocb, SRB_NACK_PRLI);
drivers/scsi/qla2xxx/qla_target.c
855
struct imm_ntfy_from_isp *iocb = &pla->iocb;
drivers/scsi/qla2xxx/qla_target.c
863
iocb->u.isp24.port_name, iocb->u.isp24.port_id[2],
drivers/scsi/qla2xxx/qla_target.c
864
iocb->u.isp24.port_id[1], iocb->u.isp24.port_id[0],
drivers/scsi/qla2xxx/qla_target.c
978
(own->iocb.u.isp24.status_subcode == ELS_PLOGI)) {
drivers/scsi/qla2xxx/qla_target.c
988
} else if (own && (own->iocb.u.isp24.status_subcode ==
drivers/scsi/qla2xxx/qla_target.h
120
#define GET_TARGET_ID(ha, iocb) ((HAS_EXTENDED_IDS(ha)) \
drivers/scsi/qla2xxx/qla_target.h
121
? le16_to_cpu((iocb)->u.isp2x.target.extended) \
drivers/scsi/qla2xxx/qla_target.h
122
: (uint16_t)(iocb)->u.isp2x.target.id.standard)
drivers/scsi/scsi_bsg.c
69
const struct io_comp_batch *iocb)
drivers/target/target_core_file.c
247
struct kiocb iocb;
drivers/target/target_core_file.c
251
static void cmd_rw_aio_complete(struct kiocb *iocb, long ret)
drivers/target/target_core_file.c
255
cmd = container_of(iocb, struct target_core_file_cmd, iocb);
drivers/target/target_core_file.c
293
aio_cmd->iocb.ki_pos = cmd->t_task_lba * dev->dev_attrib.block_size;
drivers/target/target_core_file.c
294
aio_cmd->iocb.ki_filp = file;
drivers/target/target_core_file.c
295
aio_cmd->iocb.ki_complete = cmd_rw_aio_complete;
drivers/target/target_core_file.c
296
aio_cmd->iocb.ki_flags = IOCB_DIRECT;
drivers/target/target_core_file.c
299
aio_cmd->iocb.ki_flags |= IOCB_DSYNC;
drivers/target/target_core_file.c
302
ret = file->f_op->write_iter(&aio_cmd->iocb, &iter);
drivers/target/target_core_file.c
304
ret = file->f_op->read_iter(&aio_cmd->iocb, &iter);
drivers/target/target_core_file.c
307
cmd_rw_aio_complete(&aio_cmd->iocb, ret);
drivers/tty/tty_io.c
1062
static ssize_t file_tty_write(struct file *file, struct kiocb *iocb, struct iov_iter *from)
drivers/tty/tty_io.c
1077
return hung_up_tty_write(iocb, from);
drivers/tty/tty_io.c
1100
static ssize_t tty_write(struct kiocb *iocb, struct iov_iter *from)
drivers/tty/tty_io.c
1102
return file_tty_write(iocb->ki_filp, iocb, from);
drivers/tty/tty_io.c
1105
ssize_t redirected_tty_write(struct kiocb *iocb, struct iov_iter *iter)
drivers/tty/tty_io.c
1121
res = file_tty_write(p, iocb, iter);
drivers/tty/tty_io.c
1125
return tty_write(iocb, iter);
drivers/tty/tty_io.c
418
static ssize_t hung_up_tty_read(struct kiocb *iocb, struct iov_iter *to)
drivers/tty/tty_io.c
423
static ssize_t hung_up_tty_write(struct kiocb *iocb, struct iov_iter *from)
drivers/tty/tty_io.c
901
static ssize_t tty_read(struct kiocb *iocb, struct iov_iter *to)
drivers/tty/tty_io.c
903
struct file *file = iocb->ki_filp;
drivers/tty/tty_io.c
919
return hung_up_tty_read(iocb, to);
drivers/usb/gadget/legacy/inode.c
439
struct kiocb *iocb;
drivers/usb/gadget/legacy/inode.c
448
static int ep_aio_cancel(struct kiocb *iocb)
drivers/usb/gadget/legacy/inode.c
450
struct kiocb_priv *priv = iocb->private;
drivers/usb/gadget/legacy/inode.c
471
struct kiocb *iocb = priv->iocb;
drivers/usb/gadget/legacy/inode.c
481
iocb->ki_complete(iocb, ret);
drivers/usb/gadget/legacy/inode.c
490
struct kiocb *iocb = req->context;
drivers/usb/gadget/legacy/inode.c
491
struct kiocb_priv *priv = iocb->private;
drivers/usb/gadget/legacy/inode.c
507
iocb->private = NULL;
drivers/usb/gadget/legacy/inode.c
508
iocb->ki_complete(iocb,
drivers/usb/gadget/legacy/inode.c
527
static ssize_t ep_aio(struct kiocb *iocb,
drivers/usb/gadget/legacy/inode.c
536
iocb->private = priv;
drivers/usb/gadget/legacy/inode.c
537
priv->iocb = iocb;
drivers/usb/gadget/legacy/inode.c
539
kiocb_set_cancel_fn(iocb, ep_aio_cancel);
drivers/usb/gadget/legacy/inode.c
562
req->context = iocb;
drivers/usb/gadget/legacy/inode.c
580
ep_read_iter(struct kiocb *iocb, struct iov_iter *to)
drivers/usb/gadget/legacy/inode.c
582
struct file *file = iocb->ki_filp;
drivers/usb/gadget/legacy/inode.c
594
!is_sync_kiocb(iocb)) {
drivers/usb/gadget/legacy/inode.c
612
if (is_sync_kiocb(iocb)) {
drivers/usb/gadget/legacy/inode.c
626
value = ep_aio(iocb, priv, epdata, buf, len);
drivers/usb/gadget/legacy/inode.c
639
ep_write_iter(struct kiocb *iocb, struct iov_iter *from)
drivers/usb/gadget/legacy/inode.c
641
struct file *file = iocb->ki_filp;
drivers/usb/gadget/legacy/inode.c
656
!is_sync_kiocb(iocb)) {
drivers/usb/gadget/legacy/inode.c
682
} else if (is_sync_kiocb(iocb)) {
drivers/usb/gadget/legacy/inode.c
688
value = ep_aio(iocb, priv, epdata, buf, len);
drivers/vdpa/vdpa_user/vduse_dev.c
361
static ssize_t vduse_dev_read_iter(struct kiocb *iocb, struct iov_iter *to)
drivers/vdpa/vdpa_user/vduse_dev.c
363
struct file *file = iocb->ki_filp;
drivers/vdpa/vdpa_user/vduse_dev.c
433
static ssize_t vduse_dev_write_iter(struct kiocb *iocb, struct iov_iter *from)
drivers/vdpa/vdpa_user/vduse_dev.c
435
struct file *file = iocb->ki_filp;
drivers/vhost/net.c
1838
static ssize_t vhost_net_chr_read_iter(struct kiocb *iocb, struct iov_iter *to)
drivers/vhost/net.c
1840
struct file *file = iocb->ki_filp;
drivers/vhost/net.c
1848
static ssize_t vhost_net_chr_write_iter(struct kiocb *iocb,
drivers/vhost/net.c
1851
struct file *file = iocb->ki_filp;
drivers/vhost/vdpa.c
1309
static ssize_t vhost_vdpa_chr_write_iter(struct kiocb *iocb,
drivers/vhost/vdpa.c
1312
struct file *file = iocb->ki_filp;
drivers/vhost/vsock.c
944
static ssize_t vhost_vsock_chr_read_iter(struct kiocb *iocb, struct iov_iter *to)
drivers/vhost/vsock.c
946
struct file *file = iocb->ki_filp;
drivers/vhost/vsock.c
954
static ssize_t vhost_vsock_chr_write_iter(struct kiocb *iocb,
drivers/vhost/vsock.c
957
struct file *file = iocb->ki_filp;
fs/9p/vfs_file.c
358
v9fs_file_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/9p/vfs_file.c
360
struct p9_fid *fid = iocb->ki_filp->private_data;
fs/9p/vfs_file.c
363
fid->fid, iov_iter_count(to), iocb->ki_pos);
fs/9p/vfs_file.c
366
return netfs_unbuffered_read_iter(iocb, to);
fs/9p/vfs_file.c
369
return netfs_file_read_iter(iocb, to);
fs/9p/vfs_file.c
401
v9fs_file_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/9p/vfs_file.c
403
struct file *file = iocb->ki_filp;
fs/9p/vfs_file.c
409
return netfs_unbuffered_write_iter(iocb, from);
fs/9p/vfs_file.c
412
return netfs_file_write_iter(iocb, from);
fs/adfs/inode.c
56
static int adfs_write_begin(const struct kiocb *iocb,
fs/adfs/inode.c
63
ret = cont_write_begin(iocb, mapping, pos, len, foliop, fsdata,
fs/affs/file.c
397
affs_direct_IO(struct kiocb *iocb, struct iov_iter *iter)
fs/affs/file.c
399
struct file *file = iocb->ki_filp;
fs/affs/file.c
403
loff_t offset = iocb->ki_pos;
fs/affs/file.c
413
ret = blockdev_direct_IO(iocb, inode, iter, affs_get_block);
fs/affs/file.c
419
static int affs_write_begin(const struct kiocb *iocb,
fs/affs/file.c
426
ret = cont_write_begin(iocb, mapping, pos, len, foliop, fsdata,
fs/affs/file.c
435
static int affs_write_end(const struct kiocb *iocb,
fs/affs/file.c
443
ret = generic_write_end(iocb, mapping, pos, len, copied, folio, fsdata);
fs/affs/file.c
652
static int affs_write_begin_ofs(const struct kiocb *iocb,
fs/affs/file.c
692
static int affs_write_end_ofs(const struct kiocb *iocb,
fs/afs/file.c
24
static ssize_t afs_file_read_iter(struct kiocb *iocb, struct iov_iter *iter);
fs/afs/file.c
363
subreq->rreq->iocb) {
fs/afs/file.c
559
static ssize_t afs_file_read_iter(struct kiocb *iocb, struct iov_iter *iter)
fs/afs/file.c
561
struct inode *inode = file_inode(iocb->ki_filp);
fs/afs/file.c
563
struct afs_file *af = iocb->ki_filp->private_data;
fs/afs/file.c
566
if (iocb->ki_flags & IOCB_DIRECT)
fs/afs/file.c
567
return netfs_unbuffered_read_iter(iocb, iter);
fs/afs/file.c
574
ret = filemap_read(iocb, iter, 0);
fs/aio.c
1156
static inline void iocb_destroy(struct aio_kiocb *iocb)
fs/aio.c
1158
if (iocb->ki_eventfd)
fs/aio.c
1159
eventfd_ctx_put(iocb->ki_eventfd);
fs/aio.c
1160
if (iocb->ki_filp)
fs/aio.c
1161
fput(iocb->ki_filp);
fs/aio.c
1162
percpu_ref_put(&iocb->ki_ctx->reqs);
fs/aio.c
1163
kmem_cache_free(kiocb_cachep, iocb);
fs/aio.c
1174
static void aio_complete(struct aio_kiocb *iocb)
fs/aio.c
1176
struct kioctx *ctx = iocb->ki_ctx;
fs/aio.c
1198
*event = iocb->ki_res;
fs/aio.c
1202
pr_debug("%p[%u]: %p: %p %Lx %Lx %Lx\n", ctx, tail, iocb,
fs/aio.c
1203
(void __user *)(unsigned long)iocb->ki_res.obj,
fs/aio.c
1204
iocb->ki_res.data, iocb->ki_res.res, iocb->ki_res.res2);
fs/aio.c
1227
pr_debug("added to ring %p at [%u]\n", iocb, tail);
fs/aio.c
1234
if (iocb->ki_eventfd)
fs/aio.c
1235
eventfd_signal(iocb->ki_eventfd);
fs/aio.c
1259
static inline void iocb_put(struct aio_kiocb *iocb)
fs/aio.c
1261
if (refcount_dec_and_test(&iocb->ki_refcnt)) {
fs/aio.c
1262
aio_complete(iocb);
fs/aio.c
1263
iocb_destroy(iocb);
fs/aio.c
1534
static void aio_remove_iocb(struct aio_kiocb *iocb)
fs/aio.c
1536
struct kioctx *ctx = iocb->ki_ctx;
fs/aio.c
1540
list_del(&iocb->ki_list);
fs/aio.c
1546
struct aio_kiocb *iocb = container_of(kiocb, struct aio_kiocb, rw);
fs/aio.c
1548
if (!list_empty_careful(&iocb->ki_list))
fs/aio.c
1549
aio_remove_iocb(iocb);
fs/aio.c
1558
iocb->ki_res.res = res;
fs/aio.c
1559
iocb->ki_res.res2 = 0;
fs/aio.c
1560
iocb_put(iocb);
fs/aio.c
1563
static int aio_prep_rw(struct kiocb *req, const struct iocb *iocb, int rw_type)
fs/aio.c
1570
req->ki_pos = iocb->aio_offset;
fs/aio.c
1572
if (iocb->aio_flags & IOCB_FLAG_RESFD)
fs/aio.c
1574
if (iocb->aio_flags & IOCB_FLAG_IOPRIO) {
fs/aio.c
1580
ret = ioprio_check_cap(iocb->aio_reqprio);
fs/aio.c
1586
req->ki_ioprio = iocb->aio_reqprio;
fs/aio.c
1590
ret = kiocb_set_rw_flags(req, iocb->aio_rw_flags, rw_type);
fs/aio.c
1598
static ssize_t aio_setup_rw(int rw, const struct iocb *iocb,
fs/aio.c
1602
void __user *buf = (void __user *)(uintptr_t)iocb->aio_buf;
fs/aio.c
1603
size_t len = iocb->aio_nbytes;
fs/aio.c
1634
static int aio_read(struct kiocb *req, const struct iocb *iocb,
fs/aio.c
1642
ret = aio_prep_rw(req, iocb, READ);
fs/aio.c
1651
ret = aio_setup_rw(ITER_DEST, iocb, &iovec, vectored, compat, &iter);
fs/aio.c
1661
static int aio_write(struct kiocb *req, const struct iocb *iocb,
fs/aio.c
1669
ret = aio_prep_rw(req, iocb, WRITE);
fs/aio.c
1679
ret = aio_setup_rw(ITER_SOURCE, iocb, &iovec, vectored, compat, &iter);
fs/aio.c
1695
struct aio_kiocb *iocb = container_of(work, struct aio_kiocb, fsync.work);
fs/aio.c
1697
scoped_with_creds(iocb->fsync.creds)
fs/aio.c
1698
iocb->ki_res.res = vfs_fsync(iocb->fsync.file, iocb->fsync.datasync);
fs/aio.c
1700
put_cred(iocb->fsync.creds);
fs/aio.c
1701
iocb_put(iocb);
fs/aio.c
1704
static int aio_fsync(struct fsync_iocb *req, const struct iocb *iocb,
fs/aio.c
1707
if (unlikely(iocb->aio_buf || iocb->aio_offset || iocb->aio_nbytes ||
fs/aio.c
1708
iocb->aio_rw_flags))
fs/aio.c
1727
struct aio_kiocb *iocb = container_of(req, struct aio_kiocb, poll);
fs/aio.c
1729
iocb_put(iocb);
fs/aio.c
1780
struct aio_kiocb *iocb = container_of(req, struct aio_kiocb, poll);
fs/aio.c
1782
struct kioctx *ctx = iocb->ki_ctx;
fs/aio.c
1815
list_del_init(&iocb->ki_list);
fs/aio.c
1816
iocb->ki_res.res = mangle_poll(mask);
fs/aio.c
1819
iocb_put(iocb);
fs/aio.c
1823
static int aio_poll_cancel(struct kiocb *iocb)
fs/aio.c
1825
struct aio_kiocb *aiocb = container_of(iocb, struct aio_kiocb, rw);
fs/aio.c
1844
struct aio_kiocb *iocb = container_of(req, struct aio_kiocb, poll);
fs/aio.c
1866
spin_trylock_irqsave(&iocb->ki_ctx->ctx_lock, flags)) {
fs/aio.c
1867
struct kioctx *ctx = iocb->ki_ctx;
fs/aio.c
1870
list_del(&iocb->ki_list);
fs/aio.c
1871
iocb->ki_res.res = mangle_poll(mask);
fs/aio.c
1872
if (iocb->ki_eventfd && !eventfd_signal_allowed()) {
fs/aio.c
1873
iocb = NULL;
fs/aio.c
1878
if (iocb)
fs/aio.c
1879
iocb_put(iocb);
fs/aio.c
1924
struct aio_kiocb *iocb;
fs/aio.c
1943
pt->iocb->poll.head = head;
fs/aio.c
1944
add_wait_queue(head, &pt->iocb->poll.wait);
fs/aio.c
1947
static int aio_poll(struct aio_kiocb *aiocb, const struct iocb *iocb)
fs/aio.c
1956
if ((u16)iocb->aio_buf != iocb->aio_buf)
fs/aio.c
1959
if (iocb->aio_offset || iocb->aio_nbytes || iocb->aio_rw_flags)
fs/aio.c
1963
req->events = demangle_poll(iocb->aio_buf) | EPOLLERR | EPOLLHUP;
fs/aio.c
1972
apt.iocb = aiocb;
fs/aio.c
2022
static int __io_submit_one(struct kioctx *ctx, const struct iocb *iocb,
fs/aio.c
2023
struct iocb __user *user_iocb, struct aio_kiocb *req,
fs/aio.c
2026
req->ki_filp = fget(iocb->aio_fildes);
fs/aio.c
2030
if (iocb->aio_flags & IOCB_FLAG_RESFD) {
fs/aio.c
2038
eventfd = eventfd_ctx_fdget(iocb->aio_resfd);
fs/aio.c
2051
req->ki_res.data = iocb->aio_data;
fs/aio.c
2055
switch (iocb->aio_lio_opcode) {
fs/aio.c
2057
return aio_read(&req->rw, iocb, false, compat);
fs/aio.c
2059
return aio_write(&req->rw, iocb, false, compat);
fs/aio.c
2061
return aio_read(&req->rw, iocb, true, compat);
fs/aio.c
2063
return aio_write(&req->rw, iocb, true, compat);
fs/aio.c
2065
return aio_fsync(&req->fsync, iocb, false);
fs/aio.c
2067
return aio_fsync(&req->fsync, iocb, true);
fs/aio.c
2069
return aio_poll(req, iocb);
fs/aio.c
2071
pr_debug("invalid aio operation %d\n", iocb->aio_lio_opcode);
fs/aio.c
2076
static int io_submit_one(struct kioctx *ctx, struct iocb __user *user_iocb,
fs/aio.c
2080
struct iocb iocb;
fs/aio.c
2083
if (unlikely(copy_from_user(&iocb, user_iocb, sizeof(iocb))))
fs/aio.c
2087
if (unlikely(iocb.aio_reserved2)) {
fs/aio.c
2094
(iocb.aio_buf != (unsigned long)iocb.aio_buf) ||
fs/aio.c
2095
(iocb.aio_nbytes != (size_t)iocb.aio_nbytes) ||
fs/aio.c
2096
((ssize_t)iocb.aio_nbytes < 0)
fs/aio.c
2106
err = __io_submit_one(ctx, &iocb, user_iocb, req, compat);
fs/aio.c
2136
struct iocb __user * __user *, iocbpp)
fs/aio.c
2158
struct iocb __user *user_iocb;
fs/aio.c
2229
SYSCALL_DEFINE3(io_cancel, aio_context_t, ctx_id, struct iocb __user *, iocb,
fs/aio.c
2236
u64 obj = (u64)(unsigned long)iocb;
fs/aio.c
2238
if (unlikely(get_user(key, &iocb->aio_key)))
fs/aio.c
637
void kiocb_set_cancel_fn(struct kiocb *iocb, kiocb_cancel_fn *cancel)
fs/aio.c
647
if (!(iocb->ki_flags & IOCB_AIO_RW))
fs/aio.c
650
req = container_of(iocb, struct aio_kiocb, rw);
fs/backing-file.c
105
fput(aio->iocb.ki_filp);
fs/backing-file.c
112
struct kiocb *iocb = &aio->iocb;
fs/backing-file.c
115
orig_iocb->ki_pos = iocb->ki_pos;
fs/backing-file.c
122
static void backing_aio_rw_complete(struct kiocb *iocb, long res)
fs/backing-file.c
124
struct backing_aio *aio = container_of(iocb, struct backing_aio, iocb);
fs/backing-file.c
127
if (iocb->ki_flags & IOCB_WRITE)
fs/backing-file.c
128
kiocb_end_write(iocb);
fs/backing-file.c
138
backing_aio_rw_complete(&aio->iocb, aio->res);
fs/backing-file.c
141
static void backing_aio_queue_completion(struct kiocb *iocb, long res)
fs/backing-file.c
143
struct backing_aio *aio = container_of(iocb, struct backing_aio, iocb);
fs/backing-file.c
154
static int backing_aio_init_wq(struct kiocb *iocb)
fs/backing-file.c
156
struct super_block *sb = file_inode(iocb->ki_filp)->i_sb;
fs/backing-file.c
165
struct kiocb *iocb, int flags)
fs/backing-file.c
170
if (is_sync_kiocb(iocb)) {
fs/backing-file.c
173
return vfs_iter_read(file, iter, &iocb->ki_pos, rwf);
fs/backing-file.c
180
aio->orig_iocb = iocb;
fs/backing-file.c
181
kiocb_clone(&aio->iocb, iocb, get_file(file));
fs/backing-file.c
182
aio->iocb.ki_complete = backing_aio_rw_complete;
fs/backing-file.c
184
ret = vfs_iocb_iter_read(file, &aio->iocb, iter);
fs/backing-file.c
192
struct kiocb *iocb, int flags,
fs/backing-file.c
203
if (iocb->ki_flags & IOCB_DIRECT &&
fs/backing-file.c
208
ret = do_backing_file_read_iter(file, iter, iocb, flags);
fs/backing-file.c
211
ctx->accessed(iocb->ki_filp);
fs/backing-file.c
218
struct kiocb *iocb, int flags,
fs/backing-file.c
224
if (is_sync_kiocb(iocb)) {
fs/backing-file.c
227
ret = vfs_iter_write(file, iter, &iocb->ki_pos, rwf);
fs/backing-file.c
229
end_write(iocb, ret);
fs/backing-file.c
233
ret = backing_aio_init_wq(iocb);
fs/backing-file.c
241
aio->orig_iocb = iocb;
fs/backing-file.c
243
kiocb_clone(&aio->iocb, iocb, get_file(file));
fs/backing-file.c
244
aio->iocb.ki_flags = flags;
fs/backing-file.c
245
aio->iocb.ki_complete = backing_aio_queue_completion;
fs/backing-file.c
247
ret = vfs_iocb_iter_write(file, &aio->iocb, iter);
fs/backing-file.c
255
struct kiocb *iocb, int flags,
fs/backing-file.c
266
ret = file_remove_privs(iocb->ki_filp);
fs/backing-file.c
270
if (iocb->ki_flags & IOCB_DIRECT &&
fs/backing-file.c
275
return do_backing_file_write_iter(file, iter, iocb, flags, ctx->end_write);
fs/backing-file.c
279
ssize_t backing_file_splice_read(struct file *in, struct kiocb *iocb,
fs/backing-file.c
290
ret = vfs_splice_read(in, &iocb->ki_pos, pipe, len, flags);
fs/backing-file.c
293
ctx->accessed(iocb->ki_filp);
fs/backing-file.c
300
struct file *out, struct kiocb *iocb,
fs/backing-file.c
312
ret = file_remove_privs(iocb->ki_filp);
fs/backing-file.c
318
ret = out->f_op->splice_write(pipe, out, &iocb->ki_pos, len, flags);
fs/backing-file.c
323
ctx->end_write(iocb, ret);
fs/backing-file.c
83
struct kiocb iocb;
fs/backing-file.c
87
void (*end_write)(struct kiocb *iocb, ssize_t);
fs/bfs/file.c
173
static int bfs_write_begin(const struct kiocb *iocb,
fs/btrfs/btrfs_inode.h
608
ssize_t btrfs_encoded_read(struct kiocb *iocb, struct iov_iter *iter,
fs/btrfs/btrfs_inode.h
612
ssize_t btrfs_encoded_read_regular(struct kiocb *iocb, struct iov_iter *iter,
fs/btrfs/btrfs_inode.h
617
ssize_t btrfs_do_encoded_write(struct kiocb *iocb, struct iov_iter *from,
fs/btrfs/direct-io.c
1022
if (iocb->ki_flags & IOCB_NOWAIT) {
fs/btrfs/direct-io.c
1027
pos = iocb->ki_pos;
fs/btrfs/direct-io.c
1028
written_buffered = btrfs_buffered_write(iocb, from);
fs/btrfs/direct-io.c
1045
iocb->ki_pos = pos + written_buffered;
fs/btrfs/direct-io.c
1077
ssize_t btrfs_direct_read(struct kiocb *iocb, struct iov_iter *to)
fs/btrfs/direct-io.c
1079
struct inode *inode = file_inode(iocb->ki_filp);
fs/btrfs/direct-io.c
1087
if (check_direct_read(inode_to_fs_info(inode), to, iocb->ki_pos))
fs/btrfs/direct-io.c
1109
ret = btrfs_dio_read(iocb, to, read);
fs/btrfs/direct-io.c
811
static ssize_t btrfs_dio_read(struct kiocb *iocb, struct iov_iter *iter,
fs/btrfs/direct-io.c
816
return iomap_dio_rw(iocb, iter, &btrfs_dio_iomap_ops, &btrfs_dio_ops,
fs/btrfs/direct-io.c
820
static struct iomap_dio *btrfs_dio_write(struct kiocb *iocb, struct iov_iter *iter,
fs/btrfs/direct-io.c
825
return __iomap_dio_rw(iocb, iter, &btrfs_dio_iomap_ops, &btrfs_dio_ops,
fs/btrfs/direct-io.c
842
ssize_t btrfs_direct_write(struct kiocb *iocb, struct iov_iter *from)
fs/btrfs/direct-io.c
844
struct file *file = iocb->ki_filp;
fs/btrfs/direct-io.c
858
if (iocb->ki_flags & IOCB_NOWAIT)
fs/btrfs/direct-io.c
867
if (iocb->ki_pos + iov_iter_count(from) <= i_size_read(inode) && IS_NOSEC(inode))
fs/btrfs/direct-io.c
892
ret = generic_write_checks(iocb, from);
fs/btrfs/direct-io.c
898
ret = btrfs_write_check(iocb, ret);
fs/btrfs/direct-io.c
904
pos = iocb->ki_pos;
fs/btrfs/direct-io.c
957
dio = btrfs_dio_write(iocb, from, written);
fs/btrfs/direct-io.h
13
ssize_t btrfs_direct_write(struct kiocb *iocb, struct iov_iter *from);
fs/btrfs/direct-io.h
14
ssize_t btrfs_direct_read(struct kiocb *iocb, struct iov_iter *to);
fs/btrfs/file.c
1033
int btrfs_write_check(struct kiocb *iocb, size_t count)
fs/btrfs/file.c
1035
struct file *file = iocb->ki_filp;
fs/btrfs/file.c
1038
loff_t pos = iocb->ki_pos;
fs/btrfs/file.c
1048
if ((iocb->ki_flags & IOCB_NOWAIT) &&
fs/btrfs/file.c
1340
ssize_t btrfs_buffered_write(struct kiocb *iocb, struct iov_iter *iter)
fs/btrfs/file.c
1342
struct file *file = iocb->ki_filp;
fs/btrfs/file.c
1350
const bool nowait = (iocb->ki_flags & IOCB_NOWAIT);
fs/btrfs/file.c
1366
ret = generic_write_checks(iocb, iter);
fs/btrfs/file.c
1370
ret = btrfs_write_check(iocb, ret);
fs/btrfs/file.c
1374
pos = iocb->ki_pos;
fs/btrfs/file.c
1386
pagecache_isize_extended(inode, old_isize, iocb->ki_pos);
fs/btrfs/file.c
1387
iocb->ki_pos += num_written;
fs/btrfs/file.c
1394
static ssize_t btrfs_encoded_write(struct kiocb *iocb, struct iov_iter *from,
fs/btrfs/file.c
1397
struct file *file = iocb->ki_filp;
fs/btrfs/file.c
1404
ret = generic_write_checks_count(iocb, &count);
fs/btrfs/file.c
1415
ret = btrfs_write_check(iocb, encoded->len);
fs/btrfs/file.c
1419
ret = btrfs_do_encoded_write(iocb, from, encoded);
fs/btrfs/file.c
1425
ssize_t btrfs_do_write_iter(struct kiocb *iocb, struct iov_iter *from,
fs/btrfs/file.c
1428
struct file *file = iocb->ki_filp;
fs/btrfs/file.c
1442
if (encoded && (iocb->ki_flags & IOCB_NOWAIT))
fs/btrfs/file.c
1446
num_written = btrfs_encoded_write(iocb, from, encoded);
fs/btrfs/file.c
1448
} else if (iocb->ki_flags & IOCB_DIRECT) {
fs/btrfs/file.c
1449
num_written = btrfs_direct_write(iocb, from);
fs/btrfs/file.c
1452
num_written = btrfs_buffered_write(iocb, from);
fs/btrfs/file.c
1459
num_sync = generic_write_sync(iocb, num_sync);
fs/btrfs/file.c
1467
static ssize_t btrfs_file_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/btrfs/file.c
1469
return btrfs_do_write_iter(iocb, from, NULL);
fs/btrfs/file.c
3816
static ssize_t btrfs_file_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/btrfs/file.c
3820
if (btrfs_is_shutdown(inode_to_fs_info(file_inode(iocb->ki_filp))))
fs/btrfs/file.c
3823
if (iocb->ki_flags & IOCB_DIRECT) {
fs/btrfs/file.c
3824
ret = btrfs_direct_read(iocb, to);
fs/btrfs/file.c
3826
iocb->ki_pos >= i_size_read(file_inode(iocb->ki_filp)))
fs/btrfs/file.c
3830
return filemap_read(iocb, to, ret);
fs/btrfs/file.h
36
ssize_t btrfs_do_write_iter(struct kiocb *iocb, struct iov_iter *from,
fs/btrfs/file.h
48
int btrfs_write_check(struct kiocb *iocb, size_t count);
fs/btrfs/file.h
49
ssize_t btrfs_buffered_write(struct kiocb *iocb, struct iov_iter *i);
fs/btrfs/inode.c
9287
struct kiocb *iocb,
fs/btrfs/inode.c
9295
struct btrfs_inode *inode = BTRFS_I(file_inode(iocb->ki_filp));
fs/btrfs/inode.c
9306
const bool nowait = (iocb->ki_flags & IOCB_NOWAIT);
fs/btrfs/inode.c
9330
inode->vfs_inode.i_size) - iocb->ki_pos;
fs/btrfs/inode.c
9346
encoded->unencoded_offset = iocb->ki_pos - extent_start;
fs/btrfs/inode.c
9351
ptr += iocb->ki_pos - extent_start;
fs/btrfs/inode.c
9476
ssize_t btrfs_encoded_read_regular(struct kiocb *iocb, struct iov_iter *iter,
fs/btrfs/inode.c
9482
struct btrfs_inode *inode = BTRFS_I(file_inode(iocb->ki_filp));
fs/btrfs/inode.c
9513
i = (iocb->ki_pos - start) >> PAGE_SHIFT;
fs/btrfs/inode.c
9514
page_offset = (iocb->ki_pos - start) & (PAGE_SIZE - 1);
fs/btrfs/inode.c
9540
ssize_t btrfs_encoded_read(struct kiocb *iocb, struct iov_iter *iter,
fs/btrfs/inode.c
9545
struct btrfs_inode *inode = BTRFS_I(file_inode(iocb->ki_filp));
fs/btrfs/inode.c
9552
const bool nowait = (iocb->ki_flags & IOCB_NOWAIT);
fs/btrfs/inode.c
9555
file_accessed(iocb->ki_filp);
fs/btrfs/inode.c
9562
if (iocb->ki_pos >= inode->vfs_inode.i_size) {
fs/btrfs/inode.c
9566
start = ALIGN_DOWN(iocb->ki_pos, fs_info->sectorsize);
fs/btrfs/inode.c
9630
ret = btrfs_encoded_read_inline(iocb, iter, start, lockend,
fs/btrfs/inode.c
9641
inode->vfs_inode.i_size) - iocb->ki_pos;
fs/btrfs/inode.c
9661
encoded->unencoded_offset = iocb->ki_pos - (em->start - em->offset);
fs/btrfs/inode.c
9675
*disk_io_size = min(lockend + 1, iocb->ki_pos + encoded->len) - start;
fs/btrfs/inode.c
9676
count = start + *disk_io_size - iocb->ki_pos;
fs/btrfs/inode.c
9708
ssize_t btrfs_do_encoded_write(struct kiocb *iocb, struct iov_iter *from,
fs/btrfs/inode.c
9711
struct btrfs_inode *inode = BTRFS_I(file_inode(iocb->ki_filp));
fs/btrfs/inode.c
9787
start = iocb->ki_pos;
fs/btrfs/inode.c
9958
iocb->ki_pos += encoded->len;
fs/btrfs/ioctl.c
4527
struct kiocb iocb;
fs/btrfs/ioctl.c
4548
struct btrfs_inode *inode = BTRFS_I(file_inode(priv->iocb.ki_filp));
fs/btrfs/ioctl.c
4567
index = (priv->iocb.ki_pos - priv->start) >> PAGE_SHIFT;
fs/btrfs/ioctl.c
4568
page_offset = offset_in_page(priv->iocb.ki_pos - priv->start);
fs/btrfs/ioctl.c
4613
static int btrfs_uring_read_extent(struct kiocb *iocb, struct iov_iter *iter,
fs/btrfs/ioctl.c
4620
struct btrfs_inode *inode = BTRFS_I(file_inode(iocb->ki_filp));
fs/btrfs/ioctl.c
4643
priv->iocb = *iocb;
fs/buffer.c
2278
int generic_write_end(const struct kiocb *iocb, struct address_space *mapping,
fs/buffer.c
2499
static int cont_expand_zero(const struct kiocb *iocb,
fs/buffer.c
2524
err = aops->write_begin(iocb, mapping, curpos, len,
fs/buffer.c
2529
err = aops->write_end(iocb, mapping, curpos, len, len,
fs/buffer.c
2557
err = aops->write_begin(iocb, mapping, curpos, len,
fs/buffer.c
2562
err = aops->write_end(iocb, mapping, curpos, len, len,
fs/buffer.c
2577
int cont_write_begin(const struct kiocb *iocb, struct address_space *mapping,
fs/buffer.c
2586
err = cont_expand_zero(iocb, mapping, pos, bytes);
fs/cachefiles/io.c
140
ki->iocb.ki_filp = file;
fs/cachefiles/io.c
141
ki->iocb.ki_pos = start_pos + skipped;
fs/cachefiles/io.c
142
ki->iocb.ki_flags = IOCB_DIRECT;
fs/cachefiles/io.c
143
ki->iocb.ki_ioprio = get_current_ioprio();
fs/cachefiles/io.c
152
ki->iocb.ki_complete = cachefiles_read_complete;
fs/cachefiles/io.c
154
get_file(ki->iocb.ki_filp);
fs/cachefiles/io.c
157
trace_cachefiles_read(object, file_inode(file), ki->iocb.ki_pos, len - skipped);
fs/cachefiles/io.c
161
ret = vfs_iocb_iter_read(file, &ki->iocb, iter);
fs/cachefiles/io.c
178
cachefiles_read_complete(&ki->iocb, ret);
fs/cachefiles/io.c
20
struct kiocb iocb;
fs/cachefiles/io.c
256
static void cachefiles_write_complete(struct kiocb *iocb, long ret)
fs/cachefiles/io.c
258
struct cachefiles_kiocb *ki = container_of(iocb, struct cachefiles_kiocb, iocb);
fs/cachefiles/io.c
260
struct inode *inode = file_inode(ki->iocb.ki_filp);
fs/cachefiles/io.c
265
kiocb_end_write(iocb);
fs/cachefiles/io.c
309
ki->iocb.ki_filp = file;
fs/cachefiles/io.c
310
ki->iocb.ki_pos = start_pos;
fs/cachefiles/io.c
311
ki->iocb.ki_flags = IOCB_DIRECT | IOCB_WRITE;
fs/cachefiles/io.c
312
ki->iocb.ki_ioprio = get_current_ioprio();
fs/cachefiles/io.c
322
ki->iocb.ki_complete = cachefiles_write_complete;
fs/cachefiles/io.c
325
get_file(ki->iocb.ki_filp);
fs/cachefiles/io.c
328
trace_cachefiles_write(object, file_inode(file), ki->iocb.ki_pos, len);
fs/cachefiles/io.c
332
ret = vfs_iocb_iter_write(file, &ki->iocb, iter);
fs/cachefiles/io.c
349
cachefiles_write_complete(&ki->iocb, ret);
fs/cachefiles/io.c
39
fput(ki->iocb.ki_filp);
fs/cachefiles/io.c
47
static void cachefiles_read_complete(struct kiocb *iocb, long ret)
fs/cachefiles/io.c
49
struct cachefiles_kiocb *ki = container_of(iocb, struct cachefiles_kiocb, iocb);
fs/cachefiles/io.c
50
struct inode *inode = file_inode(ki->iocb.ki_filp);
fs/ceph/addr.c
1887
static int ceph_write_begin(const struct kiocb *iocb,
fs/ceph/addr.c
1892
struct file *file = iocb->ki_filp;
fs/ceph/addr.c
1910
static int ceph_write_end(const struct kiocb *iocb,
fs/ceph/addr.c
1915
struct file *file = iocb->ki_filp;
fs/ceph/file.c
1279
static ssize_t ceph_sync_read(struct kiocb *iocb, struct iov_iter *to,
fs/ceph/file.c
1282
struct file *file = iocb->ki_filp;
fs/ceph/file.c
1286
doutc(cl, "on file %p %llx~%zx %s\n", file, iocb->ki_pos,
fs/ceph/file.c
1290
return __ceph_sync_read(inode, &iocb->ki_pos, to, retry_op, NULL);
fs/ceph/file.c
1294
struct kiocb *iocb;
fs/ceph/file.c
1323
if (aio_req->iocb->ki_flags & IOCB_DIRECT)
fs/ceph/file.c
1335
loff_t endoff = aio_req->iocb->ki_pos + aio_req->total_len;
fs/ceph/file.c
1353
aio_req->iocb->ki_complete(aio_req->iocb, ret);
fs/ceph/file.c
1406
loff_t endoff = aio_req->iocb->ki_pos + rc;
fs/ceph/file.c
1519
ceph_direct_read_write(struct kiocb *iocb, struct iov_iter *iter,
fs/ceph/file.c
1523
struct file *file = iocb->ki_filp;
fs/ceph/file.c
1538
loff_t pos = iocb->ki_pos;
fs/ceph/file.c
1618
if (pos == iocb->ki_pos && !is_sync_kiocb(iocb) &&
fs/ceph/file.c
1622
aio_req->iocb = iocb;
fs/ceph/file.c
1745
if (ret != -EOLDSNAPC && pos > iocb->ki_pos) {
fs/ceph/file.c
1746
ret = pos - iocb->ki_pos;
fs/ceph/file.c
1747
iocb->ki_pos = pos;
fs/ceph/file.c
1760
ceph_sync_write(struct kiocb *iocb, struct iov_iter *from, loff_t pos,
fs/ceph/file.c
1763
struct file *file = iocb->ki_filp;
fs/ceph/file.c
2155
iocb->ki_pos = pos;
fs/ceph/file.c
2168
static ssize_t ceph_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/ceph/file.c
2170
struct file *filp = iocb->ki_filp;
fs/ceph/file.c
2175
bool direct_lock = iocb->ki_flags & IOCB_DIRECT;
fs/ceph/file.c
2183
iocb->ki_pos, (unsigned)len, inode, ceph_vinop(inode));
fs/ceph/file.c
2208
(iocb->ki_flags & IOCB_DIRECT) ||
fs/ceph/file.c
2212
inode, ceph_vinop(inode), iocb->ki_pos, (unsigned)len,
fs/ceph/file.c
2217
(iocb->ki_flags & IOCB_DIRECT) &&
fs/ceph/file.c
2219
ret = ceph_direct_read_write(iocb, to,
fs/ceph/file.c
2224
ret = ceph_sync_read(iocb, to, &retry_op);
fs/ceph/file.c
2232
inode, ceph_vinop(inode), iocb->ki_pos, (unsigned)len,
fs/ceph/file.c
2235
ret = generic_file_read_iter(iocb, to);
fs/ceph/file.c
2275
if (iocb->ki_pos < i_size &&
fs/ceph/file.c
2276
iocb->ki_pos < PAGE_SIZE) {
fs/ceph/file.c
2278
iocb->ki_pos + len);
fs/ceph/file.c
2283
iocb->ki_pos & ~PAGE_MASK,
fs/ceph/file.c
2284
end - iocb->ki_pos, to);
fs/ceph/file.c
2285
iocb->ki_pos += ret;
fs/ceph/file.c
2288
if (iocb->ki_pos < i_size && read < len) {
fs/ceph/file.c
2290
i_size - iocb->ki_pos);
fs/ceph/file.c
2292
iocb->ki_pos += ret;
fs/ceph/file.c
2300
if (retry_op == CHECK_EOF && iocb->ki_pos < i_size &&
fs/ceph/file.c
2303
iocb->ki_pos, i_size);
fs/ceph/file.c
2393
static ssize_t ceph_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/ceph/file.c
2395
struct file *file = iocb->ki_filp;
fs/ceph/file.c
2421
if ((iocb->ki_flags & (IOCB_DIRECT | IOCB_APPEND)) == IOCB_DIRECT)
fs/ceph/file.c
2430
if (iocb->ki_flags & IOCB_APPEND) {
fs/ceph/file.c
2436
err = generic_write_checks(iocb, from);
fs/ceph/file.c
2440
pos = iocb->ki_pos;
fs/ceph/file.c
2490
(iocb->ki_flags & IOCB_DIRECT) || (fi->flags & CEPH_F_SYNC) ||
fs/ceph/file.c
2510
if ((iocb->ki_flags & IOCB_DIRECT) && !IS_ENCRYPTED(inode))
fs/ceph/file.c
2511
written = ceph_direct_read_write(iocb, &data, snapc,
fs/ceph/file.c
2514
written = ceph_sync_write(iocb, &data, pos, snapc);
fs/ceph/file.c
2530
written = generic_perform_write(iocb, from);
fs/ceph/file.c
2543
if (ceph_quota_is_max_bytes_approaching(inode, iocb->ki_pos))
fs/ceph/file.c
2561
iocb->ki_flags |= IOCB_DSYNC;
fs/ceph/file.c
2562
written = generic_write_sync(iocb, written);
fs/coda/file.c
41
coda_file_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/coda/file.c
43
struct file *coda_file = iocb->ki_filp;
fs/coda/file.c
46
loff_t ki_pos = iocb->ki_pos;
fs/coda/file.c
56
ret = vfs_iter_read(cfi->cfi_container, to, &iocb->ki_pos, 0);
fs/coda/file.c
66
coda_file_write_iter(struct kiocb *iocb, struct iov_iter *to)
fs/coda/file.c
68
struct file *coda_file = iocb->ki_filp;
fs/coda/file.c
72
loff_t ki_pos = iocb->ki_pos;
fs/coda/file.c
83
ret = vfs_iter_write(cfi->cfi_container, to, &iocb->ki_pos, 0);
fs/configfs/file.c
106
static ssize_t configfs_bin_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/configfs/file.c
108
struct file *file = iocb->ki_filp;
fs/configfs/file.c
168
if (iocb->ki_pos >= buffer->bin_buffer_size)
fs/configfs/file.c
170
retval = copy_to_iter(buffer->bin_buffer + iocb->ki_pos,
fs/configfs/file.c
171
buffer->bin_buffer_size - iocb->ki_pos, to);
fs/configfs/file.c
172
iocb->ki_pos += retval;
fs/configfs/file.c
220
static ssize_t configfs_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/configfs/file.c
222
struct file *file = iocb->ki_filp;
fs/configfs/file.c
231
iocb->ki_pos += len;
fs/configfs/file.c
236
static ssize_t configfs_bin_write_iter(struct kiocb *iocb,
fs/configfs/file.c
239
struct file *file = iocb->ki_filp;
fs/configfs/file.c
255
end_offset = iocb->ki_pos + iov_iter_count(from);
fs/configfs/file.c
282
len = copy_from_iter(buffer->bin_buffer + iocb->ki_pos,
fs/configfs/file.c
283
buffer->bin_buffer_size - iocb->ki_pos, from);
fs/configfs/file.c
284
iocb->ki_pos += len;
fs/configfs/file.c
80
static ssize_t configfs_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/configfs/file.c
82
struct file *file = iocb->ki_filp;
fs/configfs/file.c
93
__func__, iov_iter_count(to), iocb->ki_pos, buffer->page);
fs/configfs/file.c
94
if (iocb->ki_pos >= buffer->count)
fs/configfs/file.c
96
retval = copy_to_iter(buffer->page + iocb->ki_pos,
fs/configfs/file.c
97
buffer->count - iocb->ki_pos, to);
fs/configfs/file.c
98
iocb->ki_pos += retval;
fs/dax.c
1744
dax_iomap_rw(struct kiocb *iocb, struct iov_iter *iter,
fs/dax.c
1748
.inode = iocb->ki_filp->f_mapping->host,
fs/dax.c
1749
.pos = iocb->ki_pos,
fs/dax.c
1756
if (WARN_ON_ONCE(iocb->ki_flags & IOCB_ATOMIC))
fs/dax.c
1769
if (iocb->ki_flags & IOCB_NOWAIT)
fs/dax.c
1775
done = iomi.pos - iocb->ki_pos;
fs/dax.c
1776
iocb->ki_pos = iomi.pos;
fs/direct-io.c
1101
ssize_t __blockdev_direct_IO(struct kiocb *iocb, struct inode *inode,
fs/direct-io.c
1111
loff_t offset = iocb->ki_pos;
fs/direct-io.c
1156
struct address_space *mapping = iocb->ki_filp->f_mapping;
fs/direct-io.c
1169
if (is_sync_kiocb(iocb))
fs/direct-io.c
1188
if (iocb_is_dsync(iocb))
fs/direct-io.c
1216
dio->iocb = iocb;
fs/direct-io.c
139
struct kiocb *iocb; /* kiocb */
fs/direct-io.c
247
loff_t offset = dio->iocb->ki_pos;
fs/direct-io.c
281
err = dio->end_io(dio->iocb, offset, ret, dio->private);
fs/direct-io.c
300
kiocb_invalidate_post_direct_write(dio->iocb, ret);
fs/direct-io.c
310
dio->iocb->ki_pos += transferred;
fs/direct-io.c
313
ret = generic_write_sync(dio->iocb, ret);
fs/direct-io.c
314
dio->iocb->ki_complete(dio->iocb, ret);
fs/direct-io.c
412
bio->bi_write_hint = file_inode(dio->iocb->ki_filp)->i_write_hint;
fs/ecryptfs/file.c
32
static ssize_t ecryptfs_read_update_atime(struct kiocb *iocb,
fs/ecryptfs/file.c
36
struct file *file = iocb->ki_filp;
fs/ecryptfs/file.c
38
rc = generic_file_read_iter(iocb, to);
fs/ecryptfs/mmap.c
242
static int ecryptfs_write_begin(const struct kiocb *iocb,
fs/ecryptfs/mmap.c
325
rc = ecryptfs_truncate(iocb->ki_filp->f_path.dentry,
fs/ecryptfs/mmap.c
440
static int ecryptfs_write_end(const struct kiocb *iocb,
fs/erofs/data.c
445
static ssize_t erofs_file_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/erofs/data.c
447
struct inode *inode = file_inode(iocb->ki_filp);
fs/erofs/data.c
454
return dax_iomap_rw(iocb, to, &erofs_iomap_ops);
fs/erofs/data.c
456
if ((iocb->ki_flags & IOCB_DIRECT) && inode->i_sb->s_bdev) {
fs/erofs/data.c
461
return iomap_dio_rw(iocb, to, &erofs_iomap_ops,
fs/erofs/data.c
464
return filemap_read(iocb, to, 0);
fs/erofs/fileio.c
11
struct kiocb iocb;
fs/erofs/fileio.c
22
static void erofs_fileio_ki_complete(struct kiocb *iocb, long ret)
fs/erofs/fileio.c
25
container_of(iocb, struct erofs_fileio_rq, iocb);
fs/erofs/fileio.c
51
rq->iocb.ki_pos = rq->bio.bi_iter.bi_sector << SECTOR_SHIFT;
fs/erofs/fileio.c
52
rq->iocb.ki_ioprio = get_current_ioprio();
fs/erofs/fileio.c
53
rq->iocb.ki_complete = erofs_fileio_ki_complete;
fs/erofs/fileio.c
55
rq->iocb.ki_filp->f_mode & FMODE_CAN_ODIRECT)
fs/erofs/fileio.c
56
rq->iocb.ki_flags = IOCB_DIRECT;
fs/erofs/fileio.c
59
scoped_with_creds(rq->iocb.ki_filp->f_cred)
fs/erofs/fileio.c
60
ret = vfs_iocb_iter_read(rq->iocb.ki_filp, &rq->iocb, &iter);
fs/erofs/fileio.c
62
erofs_fileio_ki_complete(&rq->iocb, ret);
fs/erofs/fileio.c
72
rq->iocb.ki_filp = mdev->m_dif->file;
fs/erofs/ishare.c
122
static ssize_t erofs_ishare_file_read_iter(struct kiocb *iocb,
fs/erofs/ishare.c
125
struct file *realfile = iocb->ki_filp->private_data;
fs/erofs/ishare.c
131
kiocb_clone(&dedup_iocb, iocb, realfile);
fs/erofs/ishare.c
133
iocb->ki_pos = dedup_iocb.ki_pos;
fs/eventfd.c
214
static ssize_t eventfd_read(struct kiocb *iocb, struct iov_iter *to)
fs/eventfd.c
216
struct file *file = iocb->ki_filp;
fs/eventfd.c
225
(iocb->ki_flags & IOCB_NOWAIT)) {
fs/exfat/file.c
681
static ssize_t exfat_fallback_buffered_write(struct kiocb *iocb,
fs/exfat/file.c
684
loff_t offset = iocb->ki_pos, end;
fs/exfat/file.c
688
iocb->ki_flags &= ~IOCB_DIRECT;
fs/exfat/file.c
690
written = iomap_file_buffered_write(iocb, from, &exfat_write_iomap_ops,
fs/exfat/file.c
695
end = iocb->ki_pos + written - 1;
fs/exfat/file.c
696
ret = filemap_write_and_wait_range(iocb->ki_filp->f_mapping,
fs/exfat/file.c
701
invalidate_mapping_pages(iocb->ki_filp->f_mapping,
fs/exfat/file.c
708
static ssize_t exfat_dio_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/exfat/file.c
712
ret = iomap_dio_rw(iocb, from, &exfat_write_iomap_ops,
fs/exfat/file.c
722
written = exfat_fallback_buffered_write(iocb, from);
fs/exfat/file.c
731
static ssize_t exfat_file_write_iter(struct kiocb *iocb, struct iov_iter *iter)
fs/exfat/file.c
734
struct file *file = iocb->ki_filp;
fs/exfat/file.c
737
loff_t pos = iocb->ki_pos;
fs/exfat/file.c
751
ret = generic_write_checks(iocb, iter);
fs/exfat/file.c
755
err = file_modified(iocb->ki_filp);
fs/exfat/file.c
772
if (iocb->ki_flags & IOCB_DIRECT)
fs/exfat/file.c
773
ret = exfat_dio_write_iter(iocb, iter);
fs/exfat/file.c
775
ret = iomap_file_buffered_write(iocb, iter,
fs/exfat/file.c
785
if (iocb->ki_pos > pos) {
fs/exfat/file.c
786
ssize_t err = generic_write_sync(iocb, iocb->ki_pos - pos);
fs/exfat/file.c
800
static ssize_t exfat_file_read_iter(struct kiocb *iocb, struct iov_iter *iter)
fs/exfat/file.c
802
struct inode *inode = file_inode(iocb->ki_filp);
fs/exfat/file.c
810
if (iocb->ki_flags & IOCB_DIRECT) {
fs/exfat/file.c
811
file_accessed(iocb->ki_filp);
fs/exfat/file.c
812
ret = iomap_dio_rw(iocb, iter, &exfat_iomap_ops, NULL, 0,
fs/exfat/file.c
815
ret = generic_file_read_iter(iocb, iter);
fs/exfat/iomap.c
21
static int exfat_file_write_dio_end_io(struct kiocb *iocb, ssize_t size,
fs/exfat/iomap.c
24
struct inode *inode = file_inode(iocb->ki_filp);
fs/exfat/iomap.c
29
if (size && i_size_read(inode) < iocb->ki_pos + size) {
fs/exfat/iomap.c
30
i_size_write(inode, iocb->ki_pos + size);
fs/ext2/file.c
103
trace_ext2_dio_write_endio(iocb, size, error);
fs/ext2/file.c
111
static ssize_t ext2_dio_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/ext2/file.c
113
struct file *file = iocb->ki_filp;
fs/ext2/file.c
118
loff_t offset = iocb->ki_pos;
fs/ext2/file.c
122
trace_ext2_dio_write_begin(iocb, from, 0);
fs/ext2/file.c
124
ret = generic_write_checks(iocb, from);
fs/ext2/file.c
128
ret = kiocb_modified(iocb);
fs/ext2/file.c
133
if (iocb->ki_pos + iov_iter_count(from) > i_size_read(inode) ||
fs/ext2/file.c
134
(!IS_ALIGNED(iocb->ki_pos | iov_iter_alignment(from), blocksize)))
fs/ext2/file.c
137
ret = iomap_dio_rw(iocb, from, &ext2_iomap_ops, &ext2_dio_write_ops,
fs/ext2/file.c
152
iocb->ki_flags &= ~IOCB_DIRECT;
fs/ext2/file.c
153
pos = iocb->ki_pos;
fs/ext2/file.c
154
status = generic_perform_write(iocb, from);
fs/ext2/file.c
169
ret = generic_write_sync(iocb, ret);
fs/ext2/file.c
178
trace_ext2_dio_write_buff_end(iocb, from, status);
fs/ext2/file.c
179
trace_ext2_dio_write_end(iocb, from, ret);
fs/ext2/file.c
183
static ssize_t ext2_file_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/ext2/file.c
185
if (iocb->ki_flags & IOCB_DIRECT)
fs/ext2/file.c
186
return ext2_dio_read_iter(iocb, to);
fs/ext2/file.c
188
return generic_file_read_iter(iocb, to);
fs/ext2/file.c
191
static ssize_t ext2_file_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/ext2/file.c
193
if (iocb->ki_flags & IOCB_DIRECT)
fs/ext2/file.c
194
return ext2_dio_write_iter(iocb, from);
fs/ext2/file.c
196
return generic_file_write_iter(iocb, from);
fs/ext2/file.c
65
static ssize_t ext2_dio_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/ext2/file.c
67
struct file *file = iocb->ki_filp;
fs/ext2/file.c
71
trace_ext2_dio_read_begin(iocb, to, 0);
fs/ext2/file.c
73
ret = iomap_dio_rw(iocb, to, &ext2_iomap_ops, NULL, 0, NULL, 0);
fs/ext2/file.c
75
trace_ext2_dio_read_end(iocb, to, ret);
fs/ext2/file.c
80
static int ext2_dio_write_end_io(struct kiocb *iocb, ssize_t size,
fs/ext2/file.c
83
loff_t pos = iocb->ki_pos;
fs/ext2/file.c
84
struct inode *inode = file_inode(iocb->ki_filp);
fs/ext2/inode.c
902
ext2_write_begin(const struct kiocb *iocb, struct address_space *mapping,
fs/ext2/inode.c
913
static int ext2_write_end(const struct kiocb *iocb,
fs/ext2/inode.c
920
ret = generic_write_end(iocb, mapping, pos, len, copied, folio, fsdata);
fs/ext2/trace.h
12
TP_PROTO(struct kiocb *iocb, struct iov_iter *iter, ssize_t ret),
fs/ext2/trace.h
13
TP_ARGS(iocb, iter, ret),
fs/ext2/trace.h
25
__entry->dev = file_inode(iocb->ki_filp)->i_sb->s_dev;
fs/ext2/trace.h
26
__entry->ino = file_inode(iocb->ki_filp)->i_ino;
fs/ext2/trace.h
27
__entry->isize = file_inode(iocb->ki_filp)->i_size;
fs/ext2/trace.h
28
__entry->pos = iocb->ki_pos;
fs/ext2/trace.h
30
__entry->ki_flags = iocb->ki_flags;
fs/ext2/trace.h
31
__entry->aio = !is_sync_kiocb(iocb);
fs/ext2/trace.h
47
TP_PROTO(struct kiocb *iocb, struct iov_iter *iter, ssize_t ret), \
fs/ext2/trace.h
48
TP_ARGS(iocb, iter, ret))
fs/ext2/trace.h
56
TP_PROTO(struct kiocb *iocb, ssize_t size, int ret),
fs/ext2/trace.h
57
TP_ARGS(iocb, size, ret),
fs/ext2/trace.h
69
__entry->dev = file_inode(iocb->ki_filp)->i_sb->s_dev;
fs/ext2/trace.h
70
__entry->ino = file_inode(iocb->ki_filp)->i_ino;
fs/ext2/trace.h
71
__entry->isize = file_inode(iocb->ki_filp)->i_size;
fs/ext2/trace.h
72
__entry->pos = iocb->ki_pos;
fs/ext2/trace.h
74
__entry->ki_flags = iocb->ki_flags;
fs/ext2/trace.h
75
__entry->aio = !is_sync_kiocb(iocb);
fs/ext4/file.c
102
static ssize_t ext4_dax_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/ext4/file.c
104
struct inode *inode = file_inode(iocb->ki_filp);
fs/ext4/file.c
107
if (iocb->ki_flags & IOCB_NOWAIT) {
fs/ext4/file.c
120
return generic_file_read_iter(iocb, to);
fs/ext4/file.c
122
ret = dax_iomap_rw(iocb, to, &ext4_iomap_ops);
fs/ext4/file.c
125
file_accessed(iocb->ki_filp);
fs/ext4/file.c
130
static ssize_t ext4_file_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/ext4/file.c
132
struct inode *inode = file_inode(iocb->ki_filp);
fs/ext4/file.c
142
return ext4_dax_read_iter(iocb, to);
fs/ext4/file.c
144
if (iocb->ki_flags & IOCB_DIRECT)
fs/ext4/file.c
145
return ext4_dio_read_iter(iocb, to);
fs/ext4/file.c
147
return generic_file_read_iter(iocb, to);
fs/ext4/file.c
243
static ssize_t ext4_generic_write_checks(struct kiocb *iocb,
fs/ext4/file.c
246
struct inode *inode = file_inode(iocb->ki_filp);
fs/ext4/file.c
252
ret = generic_write_checks(iocb, from);
fs/ext4/file.c
263
if (iocb->ki_pos >= sbi->s_bitmap_maxbytes)
fs/ext4/file.c
265
iov_iter_truncate(from, sbi->s_bitmap_maxbytes - iocb->ki_pos);
fs/ext4/file.c
271
static ssize_t ext4_write_checks(struct kiocb *iocb, struct iov_iter *from)
fs/ext4/file.c
273
struct inode *inode = file_inode(iocb->ki_filp);
fs/ext4/file.c
277
count = ext4_generic_write_checks(iocb, from);
fs/ext4/file.c
281
ret = file_modified(iocb->ki_filp);
fs/ext4/file.c
290
if (iocb->ki_pos > old_size && !ext4_verity_in_progress(inode)) {
fs/ext4/file.c
291
if (iocb->ki_flags & IOCB_NOWAIT)
fs/ext4/file.c
294
ret = ext4_block_zero_eof(inode, old_size, iocb->ki_pos);
fs/ext4/file.c
302
static ssize_t ext4_buffered_write_iter(struct kiocb *iocb,
fs/ext4/file.c
306
struct inode *inode = file_inode(iocb->ki_filp);
fs/ext4/file.c
308
if (iocb->ki_flags & IOCB_NOWAIT)
fs/ext4/file.c
312
ret = ext4_write_checks(iocb, from);
fs/ext4/file.c
316
ret = generic_perform_write(iocb, from);
fs/ext4/file.c
322
return generic_write_sync(iocb, ret);
fs/ext4/file.c
391
static int ext4_dio_write_end_io(struct kiocb *iocb, ssize_t size,
fs/ext4/file.c
394
loff_t pos = iocb->ki_pos;
fs/ext4/file.c
395
struct inode *inode = file_inode(iocb->ki_filp);
fs/ext4/file.c
399
(iocb->ki_flags & IOCB_ATOMIC))
fs/ext4/file.c
442
static ssize_t ext4_dio_write_checks(struct kiocb *iocb, struct iov_iter *from,
fs/ext4/file.c
446
struct file *file = iocb->ki_filp;
fs/ext4/file.c
454
ret = ext4_generic_write_checks(iocb, from);
fs/ext4/file.c
458
offset = iocb->ki_pos;
fs/ext4/file.c
479
if (iocb->ki_flags & IOCB_NOWAIT) {
fs/ext4/file.c
497
if (iocb->ki_flags & IOCB_NOWAIT) {
fs/ext4/file.c
519
static ssize_t ext4_dio_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/ext4/file.c
523
struct inode *inode = file_inode(iocb->ki_filp);
fs/ext4/file.c
524
loff_t offset = iocb->ki_pos;
fs/ext4/file.c
538
if (iocb->ki_flags & IOCB_NOWAIT) {
fs/ext4/file.c
55
static bool ext4_should_use_dio(struct kiocb *iocb, struct iov_iter *iter)
fs/ext4/file.c
554
if (!ext4_should_use_dio(iocb, from)) {
fs/ext4/file.c
559
return ext4_buffered_write_iter(iocb, from);
fs/ext4/file.c
57
struct inode *inode = file_inode(iocb->ki_filp);
fs/ext4/file.c
571
ret = ext4_dio_write_checks(iocb, from, &ilock_shared, &extend,
fs/ext4/file.c
576
offset = iocb->ki_pos;
fs/ext4/file.c
592
ret = iomap_dio_rw(iocb, from, &ext4_iomap_ops, &ext4_dio_write_ops,
fs/ext4/file.c
622
WARN_ON_ONCE(iocb->ki_flags & IOCB_ATOMIC);
fs/ext4/file.c
624
offset = iocb->ki_pos;
fs/ext4/file.c
625
err = ext4_buffered_write_iter(iocb, from);
fs/ext4/file.c
638
err = filemap_write_and_wait_range(iocb->ki_filp->f_mapping,
fs/ext4/file.c
641
invalidate_mapping_pages(iocb->ki_filp->f_mapping,
fs/ext4/file.c
651
ext4_dax_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/ext4/file.c
658
struct inode *inode = file_inode(iocb->ki_filp);
fs/ext4/file.c
66
return IS_ALIGNED(iocb->ki_pos | iov_iter_alignment(iter), dio_align);
fs/ext4/file.c
660
if (iocb->ki_flags & IOCB_NOWAIT) {
fs/ext4/file.c
667
ret = ext4_write_checks(iocb, from);
fs/ext4/file.c
671
offset = iocb->ki_pos;
fs/ext4/file.c
69
static ssize_t ext4_dio_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/ext4/file.c
691
ret = dax_iomap_rw(iocb, from, &ext4_iomap_ops);
fs/ext4/file.c
700
ret = generic_write_sync(iocb, ret);
fs/ext4/file.c
706
ext4_file_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/ext4/file.c
709
struct inode *inode = file_inode(iocb->ki_filp);
fs/ext4/file.c
717
return ext4_dax_write_iter(iocb, from);
fs/ext4/file.c
72
struct inode *inode = file_inode(iocb->ki_filp);
fs/ext4/file.c
720
if (iocb->ki_flags & IOCB_ATOMIC) {
fs/ext4/file.c
727
ret = generic_atomic_write_valid(iocb, from);
fs/ext4/file.c
732
if (iocb->ki_flags & IOCB_DIRECT)
fs/ext4/file.c
733
return ext4_dio_write_iter(iocb, from);
fs/ext4/file.c
735
return ext4_buffered_write_iter(iocb, from);
fs/ext4/file.c
74
if (iocb->ki_flags & IOCB_NOWAIT) {
fs/ext4/file.c
81
if (!ext4_should_use_dio(iocb, to)) {
fs/ext4/file.c
90
iocb->ki_flags &= ~IOCB_DIRECT;
fs/ext4/file.c
91
return generic_file_read_iter(iocb, to);
fs/ext4/file.c
94
ret = iomap_dio_rw(iocb, to, &ext4_iomap_ops, NULL, 0, NULL, 0);
fs/ext4/file.c
97
file_accessed(iocb->ki_filp);
fs/ext4/inode.c
1288
static int ext4_write_begin(const struct kiocb *iocb,
fs/ext4/inode.c
1331
folio = write_begin_get_folio(iocb, mapping, index, len);
fs/ext4/inode.c
1439
static int ext4_write_end(const struct kiocb *iocb,
fs/ext4/inode.c
1543
static int ext4_journalled_write_end(const struct kiocb *iocb,
fs/ext4/inode.c
3135
static int ext4_da_write_begin(const struct kiocb *iocb,
fs/ext4/inode.c
3153
return ext4_write_begin(iocb, mapping, pos,
fs/ext4/inode.c
3169
folio = write_begin_get_folio(iocb, mapping, index, len);
fs/ext4/inode.c
3288
static int ext4_da_write_end(const struct kiocb *iocb,
fs/ext4/inode.c
3297
return ext4_write_end(iocb, mapping, pos,
fs/f2fs/data.c
3919
static int f2fs_write_begin(const struct kiocb *iocb,
fs/f2fs/data.c
4063
static int f2fs_write_end(const struct kiocb *iocb,
fs/f2fs/file.c
4766
static bool f2fs_should_use_dio(struct inode *inode, struct kiocb *iocb,
fs/f2fs/file.c
4771
if (!(iocb->ki_flags & IOCB_DIRECT))
fs/f2fs/file.c
4788
align = iocb->ki_pos | iov_iter_alignment(iter);
fs/f2fs/file.c
4823
static int f2fs_dio_read_end_io(struct kiocb *iocb, ssize_t size, int error,
fs/f2fs/file.c
4826
struct f2fs_sb_info *sbi = F2FS_I_SB(file_inode(iocb->ki_filp));
fs/f2fs/file.c
4849
static ssize_t f2fs_dio_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/f2fs/file.c
4851
struct file *file = iocb->ki_filp;
fs/f2fs/file.c
4855
const loff_t pos = iocb->ki_pos;
fs/f2fs/file.c
4863
trace_f2fs_direct_IO_enter(inode, iocb, count, READ);
fs/f2fs/file.c
4865
if (iocb->ki_flags & IOCB_NOWAIT) {
fs/f2fs/file.c
4887
dio = __iomap_dio_rw(iocb, to, &f2fs_iomap_ops,
fs/f2fs/file.c
4927
static ssize_t f2fs_file_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/f2fs/file.c
4929
struct inode *inode = file_inode(iocb->ki_filp);
fs/f2fs/file.c
4930
const loff_t pos = iocb->ki_pos;
fs/f2fs/file.c
4938
f2fs_trace_rw_file_path(iocb->ki_filp, iocb->ki_pos,
fs/f2fs/file.c
4941
dio = f2fs_should_use_dio(inode, iocb, to);
fs/f2fs/file.c
4950
ret = f2fs_dio_read_iter(iocb, to);
fs/f2fs/file.c
4952
ret = filemap_read(iocb, to, 0);
fs/f2fs/file.c
4984
static ssize_t f2fs_write_checks(struct kiocb *iocb, struct iov_iter *from)
fs/f2fs/file.c
4986
struct file *file = iocb->ki_filp;
fs/f2fs/file.c
4997
count = generic_write_checks(iocb, from);
fs/f2fs/file.c
5006
iocb->ki_pos + iov_iter_count(from), true);
fs/f2fs/file.c
5017
static int f2fs_preallocate_blocks(struct kiocb *iocb, struct iov_iter *iter,
fs/f2fs/file.c
5020
struct inode *inode = file_inode(iocb->ki_filp);
fs/f2fs/file.c
5022
const loff_t pos = iocb->ki_pos;
fs/f2fs/file.c
5040
if (iocb->ki_flags & IOCB_NOWAIT)
fs/f2fs/file.c
5084
static ssize_t f2fs_buffered_write_iter(struct kiocb *iocb,
fs/f2fs/file.c
5087
struct file *file = iocb->ki_filp;
fs/f2fs/file.c
5091
if (iocb->ki_flags & IOCB_NOWAIT)
fs/f2fs/file.c
5094
ret = generic_perform_write(iocb, from);
fs/f2fs/file.c
5103
static int f2fs_dio_write_end_io(struct kiocb *iocb, ssize_t size, int error,
fs/f2fs/file.c
5106
struct f2fs_sb_info *sbi = F2FS_I_SB(file_inode(iocb->ki_filp));
fs/f2fs/file.c
5136
struct kiocb *iocb = iter->private;
fs/f2fs/file.c
5142
iocb->ki_write_stream ? iocb->ki_write_stream :
fs/f2fs/file.c
5166
static ssize_t f2fs_dio_write_iter(struct kiocb *iocb, struct iov_iter *from,
fs/f2fs/file.c
5169
struct file *file = iocb->ki_filp;
fs/f2fs/file.c
5174
const loff_t pos = iocb->ki_pos;
fs/f2fs/file.c
5180
trace_f2fs_direct_IO_enter(inode, iocb, count, WRITE);
fs/f2fs/file.c
5182
if (!f2fs_valid_write_stream(sbi, iocb->ki_write_stream)) {
fs/f2fs/file.c
5187
if (iocb->ki_flags & IOCB_NOWAIT) {
fs/f2fs/file.c
5223
dio = __iomap_dio_rw(iocb, from, &f2fs_iomap_ops,
fs/f2fs/file.c
5224
&f2fs_iomap_dio_write_ops, dio_flags, iocb, 0);
fs/f2fs/file.c
5248
loff_t bufio_start_pos = iocb->ki_pos;
fs/f2fs/file.c
5255
ret2 = f2fs_buffered_write_iter(iocb, from);
fs/f2fs/file.c
5257
f2fs_write_failed(inode, iocb->ki_pos);
fs/f2fs/file.c
5283
static ssize_t f2fs_file_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/f2fs/file.c
5285
struct inode *inode = file_inode(iocb->ki_filp);
fs/f2fs/file.c
5286
const loff_t orig_pos = iocb->ki_pos;
fs/f2fs/file.c
5292
const loff_t pos = iocb->ki_pos;
fs/f2fs/file.c
5306
if (iocb->ki_flags & IOCB_NOWAIT) {
fs/f2fs/file.c
5321
ret = f2fs_write_checks(iocb, from);
fs/f2fs/file.c
5326
dio = f2fs_should_use_dio(inode, iocb, from);
fs/f2fs/file.c
5335
target_size = iocb->ki_pos + iov_iter_count(from);
fs/f2fs/file.c
5336
preallocated = f2fs_preallocate_blocks(iocb, from, dio);
fs/f2fs/file.c
5341
f2fs_trace_rw_file_path(iocb->ki_filp, iocb->ki_pos,
fs/f2fs/file.c
5346
f2fs_dio_write_iter(iocb, from, &may_need_sync) :
fs/f2fs/file.c
5347
f2fs_buffered_write_iter(iocb, from);
fs/f2fs/file.c
5371
ret = generic_write_sync(iocb, ret);
fs/f2fs/file.c
5376
if (ret > 0 && !dio && (iocb->ki_flags & IOCB_DIRECT))
fs/f2fs/file.c
5377
f2fs_flush_buffered_write(iocb->ki_filp->f_mapping,
fs/fat/inode.c
223
static int fat_write_begin(const struct kiocb *iocb,
fs/fat/inode.c
230
err = cont_write_begin(iocb, mapping, pos, len,
fs/fat/inode.c
238
static int fat_write_end(const struct kiocb *iocb,
fs/fat/inode.c
245
err = generic_write_end(iocb, mapping, pos, len, copied, folio, fsdata);
fs/fat/inode.c
256
static ssize_t fat_direct_IO(struct kiocb *iocb, struct iov_iter *iter)
fs/fat/inode.c
258
struct file *file = iocb->ki_filp;
fs/fat/inode.c
262
loff_t offset = iocb->ki_pos;
fs/fat/inode.c
284
ret = blockdev_direct_IO(iocb, inode, iter, fat_get_block);
fs/fuse/dax.c
676
ssize_t fuse_dax_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/fuse/dax.c
678
struct inode *inode = file_inode(iocb->ki_filp);
fs/fuse/dax.c
681
if (iocb->ki_flags & IOCB_NOWAIT) {
fs/fuse/dax.c
688
ret = dax_iomap_rw(iocb, to, &fuse_iomap_ops);
fs/fuse/dax.c
695
static bool file_extending_write(struct kiocb *iocb, struct iov_iter *from)
fs/fuse/dax.c
697
struct inode *inode = file_inode(iocb->ki_filp);
fs/fuse/dax.c
700
((iocb->ki_pos) >= i_size_read(inode) ||
fs/fuse/dax.c
701
(iocb->ki_pos + iov_iter_count(from) > i_size_read(inode))));
fs/fuse/dax.c
704
static ssize_t fuse_dax_direct_write(struct kiocb *iocb, struct iov_iter *from)
fs/fuse/dax.c
706
struct inode *inode = file_inode(iocb->ki_filp);
fs/fuse/dax.c
707
struct fuse_io_priv io = FUSE_IO_PRIV_SYNC(iocb);
fs/fuse/dax.c
710
ret = fuse_direct_io(&io, from, &iocb->ki_pos, FUSE_DIO_WRITE);
fs/fuse/dax.c
712
fuse_write_update_attr(inode, iocb->ki_pos, ret);
fs/fuse/dax.c
716
ssize_t fuse_dax_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/fuse/dax.c
718
struct inode *inode = file_inode(iocb->ki_filp);
fs/fuse/dax.c
721
if (iocb->ki_flags & IOCB_NOWAIT) {
fs/fuse/dax.c
728
ret = generic_write_checks(iocb, from);
fs/fuse/dax.c
732
ret = file_remove_privs(iocb->ki_filp);
fs/fuse/dax.c
740
if (file_extending_write(iocb, from))
fs/fuse/dax.c
741
ret = fuse_dax_direct_write(iocb, from);
fs/fuse/dax.c
743
ret = dax_iomap_rw(iocb, from, &fuse_iomap_ops);
fs/fuse/dax.c
749
ret = generic_write_sync(iocb, ret);
fs/fuse/dev.c
1680
static ssize_t fuse_dev_read(struct kiocb *iocb, struct iov_iter *to)
fs/fuse/dev.c
1683
struct file *file = iocb->ki_filp;
fs/fuse/dev.c
1968
static ssize_t fuse_dev_write(struct kiocb *iocb, struct iov_iter *from)
fs/fuse/dev.c
1971
struct fuse_dev *fud = __fuse_get_dev(iocb->ki_filp);
fs/fuse/file.c
1113
static ssize_t fuse_cache_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/fuse/file.c
1115
struct inode *inode = iocb->ki_filp->f_mapping->host;
fs/fuse/file.c
1124
(iocb->ki_pos + iov_iter_count(to) > i_size_read(inode))) {
fs/fuse/file.c
1126
err = fuse_update_attributes(inode, iocb->ki_filp, STATX_SIZE);
fs/fuse/file.c
1131
return generic_file_read_iter(iocb, to);
fs/fuse/file.c
1156
static unsigned int fuse_write_flags(struct kiocb *iocb)
fs/fuse/file.c
1158
unsigned int flags = iocb->ki_filp->f_flags;
fs/fuse/file.c
1160
if (iocb_is_dsync(iocb))
fs/fuse/file.c
1162
if (iocb->ki_flags & IOCB_SYNC)
fs/fuse/file.c
1171
struct kiocb *iocb = ia->io->iocb;
fs/fuse/file.c
1172
struct file *file = iocb->ki_filp;
fs/fuse/file.c
1179
inarg->flags = fuse_write_flags(iocb);
fs/fuse/file.c
1215
struct kiocb *iocb, struct inode *inode,
fs/fuse/file.c
1219
struct file *file = iocb->ki_filp;
fs/fuse/file.c
1230
ia->write.in.flags = fuse_write_flags(iocb);
fs/fuse/file.c
1356
static ssize_t fuse_perform_write(struct kiocb *iocb, struct iov_iter *ii)
fs/fuse/file.c
1358
struct address_space *mapping = iocb->ki_filp->f_mapping;
fs/fuse/file.c
1362
loff_t pos = iocb->ki_pos;
fs/fuse/file.c
1386
err = fuse_send_write_pages(&ia, iocb, inode,
fs/fuse/file.c
1407
iocb->ki_pos += res;
fs/fuse/file.c
1411
static bool fuse_io_past_eof(struct kiocb *iocb, struct iov_iter *iter)
fs/fuse/file.c
1413
struct inode *inode = file_inode(iocb->ki_filp);
fs/fuse/file.c
1415
return iocb->ki_pos + iov_iter_count(iter) > i_size_read(inode);
fs/fuse/file.c
1421
static bool fuse_dio_wr_exclusive_lock(struct kiocb *iocb, struct iov_iter *from)
fs/fuse/file.c
1423
struct file *file = iocb->ki_filp;
fs/fuse/file.c
1425
struct inode *inode = file_inode(iocb->ki_filp);
fs/fuse/file.c
1436
if (iocb->ki_flags & IOCB_APPEND)
fs/fuse/file.c
1444
if (fuse_io_past_eof(iocb, from))
fs/fuse/file.c
1450
static void fuse_dio_lock(struct kiocb *iocb, struct iov_iter *from,
fs/fuse/file.c
1453
struct inode *inode = file_inode(iocb->ki_filp);
fs/fuse/file.c
1456
*exclusive = fuse_dio_wr_exclusive_lock(iocb, from);
fs/fuse/file.c
1468
if (fuse_io_past_eof(iocb, from) ||
fs/fuse/file.c
1477
static void fuse_dio_unlock(struct kiocb *iocb, bool exclusive)
fs/fuse/file.c
1479
struct inode *inode = file_inode(iocb->ki_filp);
fs/fuse/file.c
1495
static ssize_t fuse_cache_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/fuse/file.c
1497
struct file *file = iocb->ki_filp;
fs/fuse/file.c
1520
err = count = generic_write_checks(iocb, from);
fs/fuse/file.c
1526
err = kiocb_modified(iocb);
fs/fuse/file.c
1530
if (iocb->ki_flags & IOCB_DIRECT) {
fs/fuse/file.c
1531
written = generic_file_direct_write(iocb, from);
fs/fuse/file.c
1534
written = direct_write_fallback(iocb, from, written,
fs/fuse/file.c
1535
fuse_perform_write(iocb, from));
fs/fuse/file.c
1541
written = iomap_file_buffered_write(iocb, from,
fs/fuse/file.c
1546
written = fuse_perform_write(iocb, from);
fs/fuse/file.c
1551
written = generic_write_sync(iocb, written);
fs/fuse/file.c
1670
struct file *file = io->iocb->ki_filp;
fs/fuse/file.c
1774
struct inode *inode = file_inode(io->iocb->ki_filp);
fs/fuse/file.c
1783
static ssize_t fuse_direct_IO(struct kiocb *iocb, struct iov_iter *iter);
fs/fuse/file.c
1785
static ssize_t fuse_direct_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/fuse/file.c
1789
if (!is_sync_kiocb(iocb)) {
fs/fuse/file.c
1790
res = fuse_direct_IO(iocb, to);
fs/fuse/file.c
1792
struct fuse_io_priv io = FUSE_IO_PRIV_SYNC(iocb);
fs/fuse/file.c
1794
res = __fuse_direct_read(&io, to, &iocb->ki_pos);
fs/fuse/file.c
1800
static ssize_t fuse_direct_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/fuse/file.c
1802
struct inode *inode = file_inode(iocb->ki_filp);
fs/fuse/file.c
1804
loff_t pos = iocb->ki_pos;
fs/fuse/file.c
1808
fuse_dio_lock(iocb, from, &exclusive);
fs/fuse/file.c
1809
res = generic_write_checks(iocb, from);
fs/fuse/file.c
1812
if (!is_sync_kiocb(iocb)) {
fs/fuse/file.c
1813
res = fuse_direct_IO(iocb, from);
fs/fuse/file.c
1815
struct fuse_io_priv io = FUSE_IO_PRIV_SYNC(iocb);
fs/fuse/file.c
1817
res = fuse_direct_io(&io, from, &iocb->ki_pos,
fs/fuse/file.c
1819
fuse_write_update_attr(inode, iocb->ki_pos, res);
fs/fuse/file.c
1832
fuse_dio_unlock(iocb, exclusive);
fs/fuse/file.c
1837
static ssize_t fuse_file_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/fuse/file.c
1839
struct file *file = iocb->ki_filp;
fs/fuse/file.c
1847
return fuse_dax_read_iter(iocb, to);
fs/fuse/file.c
1851
return fuse_direct_read_iter(iocb, to);
fs/fuse/file.c
1853
return fuse_passthrough_read_iter(iocb, to);
fs/fuse/file.c
1855
return fuse_cache_read_iter(iocb, to);
fs/fuse/file.c
1858
static ssize_t fuse_file_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/fuse/file.c
1860
struct file *file = iocb->ki_filp;
fs/fuse/file.c
1868
return fuse_dax_write_iter(iocb, from);
fs/fuse/file.c
1872
return fuse_direct_write_iter(iocb, from);
fs/fuse/file.c
1874
return fuse_passthrough_write_iter(iocb, from);
fs/fuse/file.c
1876
return fuse_cache_write_iter(iocb, from);
fs/fuse/file.c
2728
fuse_direct_IO(struct kiocb *iocb, struct iov_iter *iter)
fs/fuse/file.c
2732
struct file *file = iocb->ki_filp;
fs/fuse/file.c
2738
loff_t offset = iocb->ki_pos;
fs/fuse/file.c
2771
io->iocb = iocb;
fs/fuse/file.c
2772
io->blocking = is_sync_kiocb(iocb);
fs/fuse/file.c
645
struct address_space *mapping = io->iocb->ki_filp->f_mapping;
fs/fuse/file.c
651
io->iocb->ki_complete(io->iocb, res);
fs/fuse/file.c
687
struct inode *inode = file_inode(io->iocb->ki_filp);
fs/fuse/file.c
688
struct address_space *mapping = io->iocb->ki_filp->f_mapping;
fs/fuse/file.c
711
io->iocb->ki_complete(io->iocb, res);
fs/fuse/file.c
797
struct file *file = ia->io->iocb->ki_filp;
fs/fuse/fuse_i.h
1220
ssize_t fuse_dax_read_iter(struct kiocb *iocb, struct iov_iter *to);
fs/fuse/fuse_i.h
1221
ssize_t fuse_dax_write_iter(struct kiocb *iocb, struct iov_iter *from);
fs/fuse/fuse_i.h
1314
ssize_t fuse_passthrough_read_iter(struct kiocb *iocb, struct iov_iter *iter);
fs/fuse/fuse_i.h
1315
ssize_t fuse_passthrough_write_iter(struct kiocb *iocb, struct iov_iter *iter);
fs/fuse/fuse_i.h
355
struct kiocb *iocb;
fs/fuse/fuse_i.h
364
.iocb = i, \
fs/fuse/passthrough.c
100
*ppos = iocb.ki_pos;
fs/fuse/passthrough.c
117
struct kiocb iocb;
fs/fuse/passthrough.c
123
init_sync_kiocb(&iocb, out);
fs/fuse/passthrough.c
124
iocb.ki_pos = *ppos;
fs/fuse/passthrough.c
125
ret = backing_file_splice_write(pipe, backing_file, &iocb, len, flags, &ctx);
fs/fuse/passthrough.c
126
*ppos = iocb.ki_pos;
fs/fuse/passthrough.c
21
static void fuse_passthrough_end_write(struct kiocb *iocb, ssize_t ret)
fs/fuse/passthrough.c
23
struct inode *inode = file_inode(iocb->ki_filp);
fs/fuse/passthrough.c
25
fuse_write_update_attr(inode, iocb->ki_pos, ret);
fs/fuse/passthrough.c
28
ssize_t fuse_passthrough_read_iter(struct kiocb *iocb, struct iov_iter *iter)
fs/fuse/passthrough.c
30
struct file *file = iocb->ki_filp;
fs/fuse/passthrough.c
42
backing_file, iocb->ki_pos, count);
fs/fuse/passthrough.c
47
ret = backing_file_read_iter(backing_file, iter, iocb, iocb->ki_flags,
fs/fuse/passthrough.c
53
ssize_t fuse_passthrough_write_iter(struct kiocb *iocb,
fs/fuse/passthrough.c
56
struct file *file = iocb->ki_filp;
fs/fuse/passthrough.c
68
backing_file, iocb->ki_pos, count);
fs/fuse/passthrough.c
74
ret = backing_file_write_iter(backing_file, iter, iocb, iocb->ki_flags,
fs/fuse/passthrough.c
91
struct kiocb iocb;
fs/fuse/passthrough.c
97
init_sync_kiocb(&iocb, in);
fs/fuse/passthrough.c
98
iocb.ki_pos = *ppos;
fs/fuse/passthrough.c
99
ret = backing_file_splice_read(backing_file, &iocb, pipe, len, flags, &ctx);
fs/gfs2/file.c
1010
static ssize_t gfs2_file_buffered_write(struct kiocb *iocb,
fs/gfs2/file.c
1014
struct file *file = iocb->ki_filp;
fs/gfs2/file.c
1038
if (should_fault_in_pages(from, iocb, &prev_count, &window_size)) {
fs/gfs2/file.c
1060
ret = gfs2_clear_beyond_eof(inode, iocb->ki_pos);
fs/gfs2/file.c
1065
ret = iomap_file_buffered_write(iocb, from, &gfs2_iomap_ops,
fs/gfs2/file.c
1078
if (should_fault_in_pages(from, iocb, &prev_count, &window_size)) {
fs/gfs2/file.c
1104
static ssize_t gfs2_file_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/gfs2/file.c
1106
struct file *file = iocb->ki_filp;
fs/gfs2/file.c
1112
gfs2_size_hint(file, iocb->ki_pos, iov_iter_count(from));
fs/gfs2/file.c
1114
if (iocb->ki_flags & IOCB_APPEND) {
fs/gfs2/file.c
1122
ret = generic_write_checks(iocb, from);
fs/gfs2/file.c
1130
if (iocb->ki_flags & IOCB_DIRECT) {
fs/gfs2/file.c
1140
ret = gfs2_file_direct_write(iocb, from, &gh);
fs/gfs2/file.c
1144
iocb->ki_flags |= IOCB_DSYNC;
fs/gfs2/file.c
1145
buffered = gfs2_file_buffered_write(iocb, from, &gh);
fs/gfs2/file.c
1159
ret2 = generic_write_sync(iocb, buffered);
fs/gfs2/file.c
1161
(iocb->ki_pos - buffered) >> PAGE_SHIFT,
fs/gfs2/file.c
1162
(iocb->ki_pos - 1) >> PAGE_SHIFT);
fs/gfs2/file.c
1170
ret = gfs2_file_buffered_write(iocb, from, &gh);
fs/gfs2/file.c
1172
ret = generic_write_sync(iocb, ret);
fs/gfs2/file.c
780
struct kiocb *iocb,
fs/gfs2/file.c
797
offs = offset_in_page(iocb->ki_pos);
fs/gfs2/file.c
811
static ssize_t gfs2_file_direct_read(struct kiocb *iocb, struct iov_iter *to,
fs/gfs2/file.c
814
struct file *file = iocb->ki_filp;
fs/gfs2/file.c
847
ret = iomap_dio_rw(iocb, to, &gfs2_iomap_ops, NULL,
fs/gfs2/file.c
857
if (should_fault_in_pages(to, iocb, &prev_count, &window_size)) {
fs/gfs2/file.c
874
static ssize_t gfs2_file_direct_write(struct kiocb *iocb, struct iov_iter *from,
fs/gfs2/file.c
877
struct file *file = iocb->ki_filp;
fs/gfs2/file.c
909
if (iocb->ki_pos + iov_iter_count(from) > i_size_read(&ip->i_inode))
fs/gfs2/file.c
913
ret = iomap_dio_rw(iocb, from, &gfs2_iomap_ops, NULL,
fs/gfs2/file.c
928
if (should_fault_in_pages(from, iocb, &prev_count, &window_size)) {
fs/gfs2/file.c
949
static ssize_t gfs2_file_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/gfs2/file.c
964
if (iocb->ki_flags & IOCB_DIRECT)
fs/gfs2/file.c
965
return gfs2_file_direct_read(iocb, to, &gh);
fs/gfs2/file.c
968
iocb->ki_flags |= IOCB_NOIO;
fs/gfs2/file.c
969
ret = generic_file_read_iter(iocb, to);
fs/gfs2/file.c
970
iocb->ki_flags &= ~IOCB_NOIO;
fs/gfs2/file.c
979
if (iocb->ki_flags & IOCB_NOWAIT)
fs/gfs2/file.c
982
ip = GFS2_I(iocb->ki_filp->f_mapping->host);
fs/gfs2/file.c
989
ret = generic_file_read_iter(iocb, to);
fs/gfs2/file.c
996
if (should_fault_in_pages(to, iocb, &prev_count, &window_size)) {
fs/hfs/hfs_fs.h
180
int hfs_write_begin(const struct kiocb *iocb, struct address_space *mapping,
fs/hfs/inode.c
126
static ssize_t hfs_direct_IO(struct kiocb *iocb, struct iov_iter *iter)
fs/hfs/inode.c
128
struct file *file = iocb->ki_filp;
fs/hfs/inode.c
134
ret = blockdev_direct_IO(iocb, inode, iter, hfs_get_block);
fs/hfs/inode.c
142
loff_t end = iocb->ki_pos + count;
fs/hfs/inode.c
48
int hfs_write_begin(const struct kiocb *iocb, struct address_space *mapping,
fs/hfs/inode.c
54
ret = cont_write_begin(iocb, mapping, pos, len, foliop, fsdata,
fs/hfsplus/hfsplus_fs.h
449
int hfsplus_write_begin(const struct kiocb *iocb,
fs/hfsplus/inode.c
123
static ssize_t hfsplus_direct_IO(struct kiocb *iocb, struct iov_iter *iter)
fs/hfsplus/inode.c
125
struct file *file = iocb->ki_filp;
fs/hfsplus/inode.c
130
loff_t end = iocb->ki_pos + count;
fs/hfsplus/inode.c
137
if (iov_iter_rw(iter) == WRITE && iocb->ki_pos > i_size_read(inode)) {
fs/hfsplus/inode.c
149
ret = generic_cont_expand_simple(inode, iocb->ki_pos);
fs/hfsplus/inode.c
166
ret = blockdev_direct_IO(iocb, inode, iter, hfsplus_get_block);
fs/hfsplus/inode.c
41
int hfsplus_write_begin(const struct kiocb *iocb,
fs/hfsplus/inode.c
48
ret = cont_write_begin(iocb, mapping, pos, len, foliop, fsdata,
fs/hostfs/hostfs_kern.c
448
static int hostfs_write_begin(const struct kiocb *iocb,
fs/hostfs/hostfs_kern.c
462
static int hostfs_write_end(const struct kiocb *iocb,
fs/hostfs/hostfs_kern.c
473
err = write_file(FILE_HOSTFS_I(iocb->ki_filp)->fd, &pos, buffer, copied);
fs/hpfs/file.c
193
static int hpfs_write_begin(const struct kiocb *iocb,
fs/hpfs/file.c
200
ret = cont_write_begin(iocb, mapping, pos, len, foliop, fsdata,
fs/hpfs/file.c
209
static int hpfs_write_end(const struct kiocb *iocb,
fs/hpfs/file.c
216
err = generic_write_end(iocb, mapping, pos, len, copied, folio, fsdata);
fs/hugetlbfs/inode.c
219
static ssize_t hugetlbfs_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/hugetlbfs/inode.c
221
struct file *file = iocb->ki_filp;
fs/hugetlbfs/inode.c
225
unsigned long index = iocb->ki_pos >> huge_page_shift(h);
fs/hugetlbfs/inode.c
226
unsigned long offset = iocb->ki_pos & ~huge_page_mask(h);
fs/hugetlbfs/inode.c
293
iocb->ki_pos = ((loff_t)index << huge_page_shift(h)) + offset;
fs/hugetlbfs/inode.c
297
static int hugetlbfs_write_begin(const struct kiocb *iocb,
fs/hugetlbfs/inode.c
305
static int hugetlbfs_write_end(const struct kiocb *iocb,
fs/inode.c
2569
int kiocb_modified(struct kiocb *iocb)
fs/inode.c
2571
return file_modified_flags(iocb->ki_filp, iocb->ki_flags);
fs/iomap/buffered-io.c
1290
iomap_file_buffered_write(struct kiocb *iocb, struct iov_iter *i,
fs/iomap/buffered-io.c
1295
.inode = iocb->ki_filp->f_mapping->host,
fs/iomap/buffered-io.c
1296
.pos = iocb->ki_pos,
fs/iomap/buffered-io.c
1303
if (iocb->ki_flags & IOCB_NOWAIT)
fs/iomap/buffered-io.c
1305
if (iocb->ki_flags & IOCB_DONTCACHE)
fs/iomap/buffered-io.c
1311
if (unlikely(iter.pos == iocb->ki_pos))
fs/iomap/buffered-io.c
1313
ret = iter.pos - iocb->ki_pos;
fs/iomap/buffered-io.c
1314
iocb->ki_pos = iter.pos;
fs/iomap/buffered-io.c
1329
struct kiocb iocb = {
fs/iomap/buffered-io.c
1337
ret = iomap_file_buffered_write(&iocb, &iiter, ops, write_ops, NULL);
fs/iomap/direct-io.c
107
struct kiocb *iocb = dio->iocb;
fs/iomap/direct-io.c
108
loff_t offset = iocb->ki_pos;
fs/iomap/direct-io.c
112
ret = dops->end_io(iocb, dio->size, ret, dio->flags);
fs/iomap/direct-io.c
114
fserror_report_io(file_inode(iocb->ki_filp),
fs/iomap/direct-io.c
140
kiocb_invalidate_post_direct_write(iocb, dio->size);
fs/iomap/direct-io.c
142
inode_dio_end(file_inode(iocb->ki_filp));
fs/iomap/direct-io.c
145
iocb->ki_pos += ret;
fs/iomap/direct-io.c
152
ret = generic_write_sync(iocb, ret);
fs/iomap/direct-io.c
156
trace_iomap_dio_complete(iocb, dio->error, ret);
fs/iomap/direct-io.c
165
struct kiocb *iocb = dio->iocb;
fs/iomap/direct-io.c
167
iocb->ki_complete(iocb, iomap_dio_complete(dio));
fs/iomap/direct-io.c
185
struct kiocb *iocb = dio->iocb;
fs/iomap/direct-io.c
216
if (dio->iocb->ki_filp->f_mapping->nrpages)
fs/iomap/direct-io.c
223
struct inode *inode = file_inode(iocb->ki_filp);
fs/iomap/direct-io.c
236
WRITE_ONCE(iocb->private, NULL);
fs/iomap/direct-io.c
30
struct kiocb *iocb;
fs/iomap/direct-io.c
301
struct inode *inode = file_inode(dio->iocb->ki_filp);
fs/iomap/direct-io.c
351
bio->bi_ioprio = dio->iocb->ki_ioprio;
fs/iomap/direct-io.c
392
dio->iocb->ki_flags &= ~IOCB_HIPRI;
fs/iomap/direct-io.c
532
dio->iocb->ki_flags &= ~IOCB_HIPRI;
fs/iomap/direct-io.c
654
dio->iocb->ki_filp, current->comm);
fs/iomap/direct-io.c
66
struct kiocb *iocb = dio->iocb;
fs/iomap/direct-io.c
683
__iomap_dio_rw(struct kiocb *iocb, struct iov_iter *iter,
fs/iomap/direct-io.c
687
struct inode *inode = file_inode(iocb->ki_filp);
fs/iomap/direct-io.c
690
.pos = iocb->ki_pos,
fs/iomap/direct-io.c
696
is_sync_kiocb(iocb) || (dio_flags & IOMAP_DIO_FORCE_WAIT);
fs/iomap/direct-io.c
701
trace_iomap_dio_rw_begin(iocb, iter, dio_flags, done_before);
fs/iomap/direct-io.c
71
if ((iocb->ki_flags & IOCB_HIPRI) && !is_sync_kiocb(iocb)) {
fs/iomap/direct-io.c
710
dio->iocb = iocb;
fs/iomap/direct-io.c
722
if (iocb->ki_flags & IOCB_NOWAIT)
fs/iomap/direct-io.c
73
WRITE_ONCE(iocb->private, bio);
fs/iomap/direct-io.c
732
ret = kiocb_write_and_wait(iocb, iomi.len);
fs/iomap/direct-io.c
747
if (iocb->ki_flags & IOCB_ATOMIC)
fs/iomap/direct-io.c
751
if (iocb_is_dsync(iocb)) {
fs/iomap/direct-io.c
763
if (!(iocb->ki_flags & IOCB_SYNC))
fs/iomap/direct-io.c
778
ret = kiocb_invalidate_pages(iocb, iomi.len);
fs/iomap/direct-io.c
783
if (iocb->ki_flags & IOCB_ATOMIC) {
fs/iomap/direct-io.c
814
iocb->ki_flags &= ~IOCB_HIPRI;
fs/iomap/direct-io.c
828
if (!(iocb->ki_flags & IOCB_NOWAIT))
fs/iomap/direct-io.c
897
iomap_dio_rw(struct kiocb *iocb, struct iov_iter *iter,
fs/iomap/direct-io.c
903
dio = __iomap_dio_rw(iocb, iter, ops, dops, dio_flags, private,
fs/iomap/trace.h
257
TP_PROTO(struct kiocb *iocb, struct iov_iter *iter,
fs/iomap/trace.h
259
TP_ARGS(iocb, iter, dio_flags, done_before),
fs/iomap/trace.h
272
__entry->dev = file_inode(iocb->ki_filp)->i_sb->s_dev;
fs/iomap/trace.h
273
__entry->ino = file_inode(iocb->ki_filp)->i_ino;
fs/iomap/trace.h
274
__entry->isize = file_inode(iocb->ki_filp)->i_size;
fs/iomap/trace.h
275
__entry->pos = iocb->ki_pos;
fs/iomap/trace.h
278
__entry->ki_flags = iocb->ki_flags;
fs/iomap/trace.h
280
__entry->aio = !is_sync_kiocb(iocb);
fs/iomap/trace.h
295
TP_PROTO(struct kiocb *iocb, int error, ssize_t ret),
fs/iomap/trace.h
296
TP_ARGS(iocb, error, ret),
fs/iomap/trace.h
308
__entry->dev = file_inode(iocb->ki_filp)->i_sb->s_dev;
fs/iomap/trace.h
309
__entry->ino = file_inode(iocb->ki_filp)->i_ino;
fs/iomap/trace.h
310
__entry->isize = file_inode(iocb->ki_filp)->i_size;
fs/iomap/trace.h
311
__entry->pos = iocb->ki_pos;
fs/iomap/trace.h
312
__entry->ki_flags = iocb->ki_flags;
fs/iomap/trace.h
313
__entry->aio = !is_sync_kiocb(iocb);
fs/jffs2/file.c
128
static int jffs2_write_begin(const struct kiocb *iocb,
fs/jffs2/file.c
243
static int jffs2_write_end(const struct kiocb *iocb,
fs/jffs2/file.c
25
static int jffs2_write_end(const struct kiocb *iocb,
fs/jffs2/file.c
29
static int jffs2_write_begin(const struct kiocb *iocb,
fs/jfs/inode.c
299
static int jfs_write_begin(const struct kiocb *iocb,
fs/jfs/inode.c
313
static int jfs_write_end(const struct kiocb *iocb,
fs/jfs/inode.c
320
ret = generic_write_end(iocb, mapping, pos, len, copied, folio, fsdata);
fs/jfs/inode.c
331
static ssize_t jfs_direct_IO(struct kiocb *iocb, struct iov_iter *iter)
fs/jfs/inode.c
333
struct file *file = iocb->ki_filp;
fs/jfs/inode.c
339
ret = blockdev_direct_IO(iocb, inode, iter, jfs_get_block);
fs/jfs/inode.c
347
loff_t end = iocb->ki_pos + count;
fs/kernfs/file.c
232
static ssize_t kernfs_file_read_iter(struct kiocb *iocb, struct iov_iter *iter)
fs/kernfs/file.c
234
struct kernfs_open_file *of = kernfs_of(iocb->ki_filp);
fs/kernfs/file.c
262
len = ops->read(of, buf, len, iocb->ki_pos);
fs/kernfs/file.c
277
iocb->ki_pos += len;
fs/kernfs/file.c
287
static ssize_t kernfs_fop_read_iter(struct kiocb *iocb, struct iov_iter *iter)
fs/kernfs/file.c
289
if (kernfs_of(iocb->ki_filp)->kn->flags & KERNFS_HAS_SEQ_SHOW)
fs/kernfs/file.c
290
return seq_read_iter(iocb, iter);
fs/kernfs/file.c
291
return kernfs_file_read_iter(iocb, iter);
fs/kernfs/file.c
304
static ssize_t kernfs_fop_write_iter(struct kiocb *iocb, struct iov_iter *iter)
fs/kernfs/file.c
306
struct kernfs_open_file *of = kernfs_of(iocb->ki_filp);
fs/kernfs/file.c
345
len = ops->write(of, buf, len, iocb->ki_pos);
fs/kernfs/file.c
353
iocb->ki_pos += len;
fs/libfs.c
1641
ssize_t noop_direct_IO(struct kiocb *iocb, struct iov_iter *iter)
fs/libfs.c
2073
ssize_t direct_write_fallback(struct kiocb *iocb, struct iov_iter *iter,
fs/libfs.c
2076
struct address_space *mapping = iocb->ki_filp->f_mapping;
fs/libfs.c
2077
loff_t pos = iocb->ki_pos - buffered_written;
fs/libfs.c
2078
loff_t end = iocb->ki_pos - 1;
fs/libfs.c
2105
iocb->ki_pos -= buffered_written;
fs/libfs.c
943
int simple_write_begin(const struct kiocb *iocb, struct address_space *mapping,
fs/libfs.c
989
static int simple_write_end(const struct kiocb *iocb,
fs/minix/inode.c
474
static int minix_write_begin(const struct kiocb *iocb,
fs/netfs/buffered_read.c
790
ssize_t netfs_buffered_read_iter(struct kiocb *iocb, struct iov_iter *iter)
fs/netfs/buffered_read.c
792
struct inode *inode = file_inode(iocb->ki_filp);
fs/netfs/buffered_read.c
796
if (WARN_ON_ONCE((iocb->ki_flags & IOCB_DIRECT) ||
fs/netfs/buffered_read.c
802
ret = filemap_read(iocb, iter, 0);
fs/netfs/buffered_read.c
830
ssize_t netfs_file_read_iter(struct kiocb *iocb, struct iov_iter *iter)
fs/netfs/buffered_read.c
832
struct netfs_inode *ictx = netfs_inode(iocb->ki_filp->f_mapping->host);
fs/netfs/buffered_read.c
834
if ((iocb->ki_flags & IOCB_DIRECT) ||
fs/netfs/buffered_read.c
836
return netfs_unbuffered_read_iter(iocb, iter);
fs/netfs/buffered_read.c
838
return netfs_buffered_read_iter(iocb, iter);
fs/netfs/buffered_write.c
103
unsigned int bdp_flags = (iocb->ki_flags & IOCB_NOWAIT) ? BDP_ASYNC : 0;
fs/netfs/buffered_write.c
105
loff_t pos = iocb->ki_pos;
fs/netfs/buffered_write.c
109
if (unlikely(iocb->ki_flags & (IOCB_DSYNC | IOCB_SYNC))
fs/netfs/buffered_write.c
119
wreq = netfs_begin_writethrough(iocb, iter->count);
fs/netfs/buffered_write.c
126
if (!is_sync_kiocb(iocb))
fs/netfs/buffered_write.c
127
wreq->iocb = iocb;
fs/netfs/buffered_write.c
432
iocb->ki_pos += written;
fs/netfs/buffered_write.c
468
ssize_t netfs_buffered_write_iter_locked(struct kiocb *iocb, struct iov_iter *from,
fs/netfs/buffered_write.c
471
struct file *file = iocb->ki_filp;
fs/netfs/buffered_write.c
474
trace_netfs_write_iter(iocb, from);
fs/netfs/buffered_write.c
484
return netfs_perform_write(iocb, from, netfs_group);
fs/netfs/buffered_write.c
501
ssize_t netfs_file_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/netfs/buffered_write.c
503
struct file *file = iocb->ki_filp;
fs/netfs/buffered_write.c
508
_enter("%llx,%zx,%llx", iocb->ki_pos, iov_iter_count(from), i_size_read(inode));
fs/netfs/buffered_write.c
513
if ((iocb->ki_flags & IOCB_DIRECT) ||
fs/netfs/buffered_write.c
515
return netfs_unbuffered_write_iter(iocb, from);
fs/netfs/buffered_write.c
521
ret = generic_write_checks(iocb, from);
fs/netfs/buffered_write.c
523
ret = netfs_buffered_write_iter_locked(iocb, from, NULL);
fs/netfs/buffered_write.c
526
ret = generic_write_sync(iocb, ret);
fs/netfs/buffered_write.c
87
ssize_t netfs_perform_write(struct kiocb *iocb, struct iov_iter *iter,
fs/netfs/buffered_write.c
90
struct file *file = iocb->ki_filp;
fs/netfs/buffered_write.c
98
.range_start = iocb->ki_pos,
fs/netfs/buffered_write.c
99
.range_end = iocb->ki_pos + iter->count,
fs/netfs/direct_read.c
153
ssize_t netfs_unbuffered_read_iter_locked(struct kiocb *iocb, struct iov_iter *iter)
fs/netfs/direct_read.c
158
bool sync = is_sync_kiocb(iocb);
fs/netfs/direct_read.c
165
ret = kiocb_write_and_wait(iocb, orig_count);
fs/netfs/direct_read.c
168
file_accessed(iocb->ki_filp);
fs/netfs/direct_read.c
170
rreq = netfs_alloc_request(iocb->ki_filp->f_mapping, iocb->ki_filp,
fs/netfs/direct_read.c
171
iocb->ki_pos, orig_count,
fs/netfs/direct_read.c
172
iocb->ki_flags & IOCB_DIRECT ?
fs/netfs/direct_read.c
207
rreq->iocb = iocb;
fs/netfs/direct_read.c
216
iocb->ki_pos += rreq->transferred;
fs/netfs/direct_read.c
240
ssize_t netfs_unbuffered_read_iter(struct kiocb *iocb, struct iov_iter *iter)
fs/netfs/direct_read.c
242
struct inode *inode = file_inode(iocb->ki_filp);
fs/netfs/direct_read.c
250
ret = netfs_unbuffered_read_iter_locked(iocb, iter);
fs/netfs/direct_write.c
155
if (!wreq->iocb && signal_pending(current)) {
fs/netfs/direct_write.c
215
ssize_t netfs_unbuffered_write_iter_locked(struct kiocb *iocb, struct iov_iter *iter,
fs/netfs/direct_write.c
219
unsigned long long start = iocb->ki_pos;
fs/netfs/direct_write.c
223
bool async = !is_sync_kiocb(iocb);
fs/netfs/direct_write.c
235
wreq = netfs_create_write_req(iocb->ki_filp->f_mapping, iocb->ki_filp, start,
fs/netfs/direct_write.c
236
iocb->ki_flags & IOCB_DIRECT ?
fs/netfs/direct_write.c
242
trace_netfs_write(wreq, (iocb->ki_flags & IOCB_DIRECT ?
fs/netfs/direct_write.c
286
wreq->iocb = iocb;
fs/netfs/direct_write.c
294
iocb->ki_pos += wreq->transferred;
fs/netfs/direct_write.c
323
ssize_t netfs_unbuffered_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/netfs/direct_write.c
325
struct file *file = iocb->ki_filp;
fs/netfs/direct_write.c
330
loff_t pos = iocb->ki_pos;
fs/netfs/direct_write.c
338
trace_netfs_write_iter(iocb, from);
fs/netfs/direct_write.c
344
ret = generic_write_checks(iocb, from);
fs/netfs/direct_write.c
353
if (iocb->ki_flags & IOCB_NOWAIT) {
fs/netfs/direct_write.c
374
end = iocb->ki_pos + iov_iter_count(from);
fs/netfs/direct_write.c
382
ret = netfs_unbuffered_write_iter_locked(iocb, from, NULL);
fs/netfs/direct_write.c
48
if (wreq->iocb) {
fs/netfs/direct_write.c
51
wreq->iocb->ki_pos += written;
fs/netfs/direct_write.c
52
if (wreq->iocb->ki_complete) {
fs/netfs/direct_write.c
54
wreq->iocb->ki_complete(wreq->iocb, wreq->error ?: written);
fs/netfs/direct_write.c
56
wreq->iocb = VFS_PTR_POISON;
fs/netfs/internal.h
216
struct netfs_io_request *netfs_begin_writethrough(struct kiocb *iocb, size_t len);
fs/netfs/read_collect.c
360
if (rreq->iocb) {
fs/netfs/read_collect.c
361
rreq->iocb->ki_pos += rreq->transferred;
fs/netfs/read_collect.c
362
if (rreq->iocb->ki_complete) {
fs/netfs/read_collect.c
364
rreq->iocb->ki_complete(
fs/netfs/read_collect.c
365
rreq->iocb, rreq->error ? rreq->error : rreq->transferred);
fs/netfs/read_collect.c
388
if (rreq->iocb) {
fs/netfs/read_collect.c
389
rreq->iocb->ki_pos += rreq->transferred;
fs/netfs/read_collect.c
390
if (rreq->iocb->ki_complete) {
fs/netfs/read_collect.c
392
rreq->iocb->ki_complete(
fs/netfs/read_collect.c
393
rreq->iocb, rreq->error ? rreq->error : rreq->transferred);
fs/netfs/write_collect.c
421
if (wreq->iocb) {
fs/netfs/write_collect.c
423
wreq->iocb->ki_pos += written;
fs/netfs/write_collect.c
424
if (wreq->iocb->ki_complete) {
fs/netfs/write_collect.c
426
wreq->iocb->ki_complete(
fs/netfs/write_collect.c
427
wreq->iocb, wreq->error ? wreq->error : written);
fs/netfs/write_collect.c
429
wreq->iocb = VFS_PTR_POISON;
fs/netfs/write_issue.c
617
struct netfs_io_request *netfs_begin_writethrough(struct kiocb *iocb, size_t len)
fs/netfs/write_issue.c
620
struct netfs_inode *ictx = netfs_inode(file_inode(iocb->ki_filp));
fs/netfs/write_issue.c
624
wreq = netfs_create_write_req(iocb->ki_filp->f_mapping, iocb->ki_filp,
fs/netfs/write_issue.c
625
iocb->ki_pos, NETFS_WRITETHROUGH);
fs/netfs/write_issue.c
703
if (wreq->iocb)
fs/nfs/direct.c
1001
struct file *file = iocb->ki_filp;
fs/nfs/direct.c
1009
file, iov_iter_count(iter), (long long) iocb->ki_pos);
fs/nfs/direct.c
1015
result = generic_write_checks(iocb, iter);
fs/nfs/direct.c
1021
pos = iocb->ki_pos;
fs/nfs/direct.c
1034
dreq->ctx = get_nfs_open_context(nfs_file_open_context(iocb->ki_filp));
fs/nfs/direct.c
1042
if (!is_sync_kiocb(iocb))
fs/nfs/direct.c
1043
dreq->iocb = iocb;
fs/nfs/direct.c
1074
iocb->ki_pos = pos + result;
fs/nfs/direct.c
1076
generic_write_sync(iocb, result);
fs/nfs/direct.c
155
int nfs_swap_rw(struct kiocb *iocb, struct iov_iter *iter)
fs/nfs/direct.c
160
ret = nfs_file_direct_read(iocb, iter, true);
fs/nfs/direct.c
162
ret = nfs_file_direct_write(iocb, iter, true);
fs/nfs/direct.c
236
if (dreq->iocb)
fs/nfs/direct.c
262
if (dreq->iocb) {
fs/nfs/direct.c
268
dreq->iocb->ki_complete(dreq->iocb, res);
fs/nfs/direct.c
432
ssize_t nfs_file_direct_read(struct kiocb *iocb, struct iov_iter *iter,
fs/nfs/direct.c
435
struct file *file = iocb->ki_filp;
fs/nfs/direct.c
445
file, count, (long long) iocb->ki_pos);
fs/nfs/direct.c
460
dreq->io_start = iocb->ki_pos;
fs/nfs/direct.c
461
dreq->ctx = get_nfs_open_context(nfs_file_open_context(iocb->ki_filp));
fs/nfs/direct.c
469
if (!is_sync_kiocb(iocb)) {
fs/nfs/direct.c
470
dreq->iocb = iocb;
fs/nfs/direct.c
471
} else if (iocb->ki_flags & IOCB_NOWAIT) {
fs/nfs/direct.c
481
if (iocb->ki_flags & IOCB_NOWAIT)
fs/nfs/direct.c
495
requested = nfs_direct_read_schedule_iovec(dreq, iter, iocb->ki_pos);
fs/nfs/direct.c
504
iocb->ki_pos += result;
fs/nfs/direct.c
996
ssize_t nfs_file_direct_write(struct kiocb *iocb, struct iov_iter *iter,
fs/nfs/file.c
163
nfs_file_read(struct kiocb *iocb, struct iov_iter *to)
fs/nfs/file.c
165
struct inode *inode = file_inode(iocb->ki_filp);
fs/nfs/file.c
168
trace_nfs_file_read(iocb, to);
fs/nfs/file.c
170
if (iocb->ki_flags & IOCB_DIRECT)
fs/nfs/file.c
171
return nfs_file_direct_read(iocb, to, false);
fs/nfs/file.c
174
if (iocb->ki_flags & IOCB_NOWAIT)
fs/nfs/file.c
178
iocb->ki_filp,
fs/nfs/file.c
179
iov_iter_count(to), (unsigned long) iocb->ki_pos);
fs/nfs/file.c
185
result = nfs_revalidate_mapping(inode, iocb->ki_filp->f_mapping);
fs/nfs/file.c
187
result = generic_file_read_iter(iocb, to);
fs/nfs/file.c
390
static int nfs_write_begin(const struct kiocb *iocb,
fs/nfs/file.c
396
struct file *file = iocb->ki_filp;
fs/nfs/file.c
407
folio = write_begin_get_folio(iocb, mapping, pos >> PAGE_SHIFT, len);
fs/nfs/file.c
432
static int nfs_write_end(const struct kiocb *iocb,
fs/nfs/file.c
437
struct file *file = iocb->ki_filp;
fs/nfs/file.c
705
ssize_t nfs_file_write(struct kiocb *iocb, struct iov_iter *from)
fs/nfs/file.c
707
struct file *file = iocb->ki_filp;
fs/nfs/file.c
714
trace_nfs_file_write(iocb, from);
fs/nfs/file.c
719
if (WARN_ON_ONCE(iocb->ki_flags & IOCB_NOWAIT))
fs/nfs/file.c
726
if (iocb->ki_flags & IOCB_DIRECT)
fs/nfs/file.c
727
return nfs_file_direct_write(iocb, from, false);
fs/nfs/file.c
730
file, iov_iter_count(from), (long long) iocb->ki_pos);
fs/nfs/file.c
737
if (iocb->ki_flags & IOCB_APPEND || iocb->ki_pos > i_size_read(inode)) {
fs/nfs/file.c
749
result = generic_write_checks(iocb, from);
fs/nfs/file.c
751
result = generic_perform_write(iocb, from);
fs/nfs/file.c
761
iocb->ki_pos - written,
fs/nfs/file.c
762
iocb->ki_pos - 1);
fs/nfs/file.c
768
iocb->ki_pos - written,
fs/nfs/file.c
769
iocb->ki_pos - 1);
fs/nfs/file.c
771
result = generic_write_sync(iocb, written);
fs/nfs/internal.h
988
struct kiocb * iocb; /* controlling i/o request */
fs/nfs/localio.c
307
nfs_local_iocb_free(struct nfs_local_kiocb *iocb)
fs/nfs/localio.c
309
kfree(iocb->bvec);
fs/nfs/localio.c
310
kfree(iocb);
fs/nfs/localio.c
317
struct nfs_local_kiocb *iocb;
fs/nfs/localio.c
319
iocb = kzalloc_obj(*iocb, flags);
fs/nfs/localio.c
320
if (iocb == NULL)
fs/nfs/localio.c
323
iocb->bvec = kmalloc_objs(struct bio_vec, hdr->page_array.npages, flags);
fs/nfs/localio.c
324
if (iocb->bvec == NULL) {
fs/nfs/localio.c
325
kfree(iocb);
fs/nfs/localio.c
330
init_sync_kiocb(&iocb->kiocb, file);
fs/nfs/localio.c
332
iocb->hdr = hdr;
fs/nfs/localio.c
333
iocb->kiocb.ki_pos = hdr->args.offset;
fs/nfs/localio.c
334
iocb->kiocb.ki_flags &= ~IOCB_APPEND;
fs/nfs/localio.c
335
iocb->kiocb.ki_complete = NULL;
fs/nfs/localio.c
336
iocb->aio_complete_work = NULL;
fs/nfs/localio.c
338
iocb->end_iter_index = -1;
fs/nfs/localio.c
340
return iocb;
fs/nfs/localio.c
344
nfs_is_local_dio_possible(struct nfs_local_kiocb *iocb, int rw,
fs/nfs/localio.c
347
struct nfs_pgio_header *hdr = iocb->hdr;
fs/nfs/localio.c
352
nfs_to->nfsd_file_dio_alignment(iocb->localio, &nf_dio_mem_align,
fs/nfs/localio.c
423
nfs_local_iters_setup_dio(struct nfs_local_kiocb *iocb, int rw,
fs/nfs/localio.c
428
struct iov_iter *iters = iocb->iters;
fs/nfs/localio.c
432
nfs_local_iter_setup(&iters[n_iters], rw, iocb->bvec,
fs/nfs/localio.c
441
nfs_local_iter_setup(&iters[n_iters], rw, iocb->bvec, nvecs,
fs/nfs/localio.c
444
iocb->iter_is_dio_aligned[n_iters] =
fs/nfs/localio.c
448
if (unlikely(!iocb->iter_is_dio_aligned[n_iters])) {
fs/nfs/localio.c
449
trace_nfs_local_dio_misaligned(iocb->hdr->inode,
fs/nfs/localio.c
453
iocb->end_iter_index = n_iters;
fs/nfs/localio.c
458
nfs_local_iter_setup(&iters[n_iters], rw, iocb->bvec,
fs/nfs/localio.c
461
iocb->end_iter_index = n_iters;
fs/nfs/localio.c
465
atomic_set(&iocb->n_iters, n_iters);
fs/nfs/localio.c
470
nfs_local_iters_init(struct nfs_local_kiocb *iocb, int rw)
fs/nfs/localio.c
472
struct nfs_pgio_header *hdr = iocb->hdr;
fs/nfs/localio.c
485
bvec_set_page(&iocb->bvec[v], *pagevec, len, base);
fs/nfs/localio.c
497
atomic_set(&iocb->n_iters, 1);
fs/nfs/localio.c
502
if (nfs_is_local_dio_possible(iocb, rw, len, &local_dio) &&
fs/nfs/localio.c
503
nfs_local_iters_setup_dio(iocb, rw, v, len, &local_dio) != 0) {
fs/nfs/localio.c
506
iocb->kiocb.ki_flags |= IOCB_DSYNC|IOCB_SYNC;
fs/nfs/localio.c
512
iov_iter_bvec(&iocb->iters[0], rw, iocb->bvec, v, len);
fs/nfs/localio.c
532
static bool nfs_local_pgio_done(struct nfs_local_kiocb *iocb, long status)
fs/nfs/localio.c
534
struct nfs_pgio_header *hdr = iocb->hdr;
fs/nfs/localio.c
547
BUG_ON(atomic_read(&iocb->n_iters) <= 0);
fs/nfs/localio.c
548
return atomic_dec_and_test(&iocb->n_iters);
fs/nfs/localio.c
552
nfs_local_iocb_release(struct nfs_local_kiocb *iocb)
fs/nfs/localio.c
554
nfs_local_file_put(iocb->localio);
fs/nfs/localio.c
555
nfs_local_iocb_free(iocb);
fs/nfs/localio.c
558
static void nfs_local_pgio_restart(struct nfs_local_kiocb *iocb,
fs/nfs/localio.c
563
iocb->kiocb.ki_pos = hdr->args.offset;
fs/nfs/localio.c
564
iocb->kiocb.ki_flags &= ~(IOCB_DSYNC | IOCB_SYNC | IOCB_DIRECT);
fs/nfs/localio.c
565
iocb->kiocb.ki_complete = NULL;
fs/nfs/localio.c
566
iocb->aio_complete_work = NULL;
fs/nfs/localio.c
567
iocb->end_iter_index = -1;
fs/nfs/localio.c
571
nfs_local_iters_init(iocb, ITER_DEST);
fs/nfs/localio.c
572
nfs_local_do_read(iocb, hdr->task.tk_ops);
fs/nfs/localio.c
575
nfs_local_iters_init(iocb, ITER_SOURCE);
fs/nfs/localio.c
576
nfs_local_do_write(iocb, hdr->task.tk_ops);
fs/nfs/localio.c
583
nfs_local_iocb_release(iocb);
fs/nfs/localio.c
589
static void nfs_local_pgio_release(struct nfs_local_kiocb *iocb)
fs/nfs/localio.c
591
struct nfs_pgio_header *hdr = iocb->hdr;
fs/nfs/localio.c
598
nfs_local_iocb_release(iocb);
fs/nfs/localio.c
601
nfs_local_pgio_restart(iocb, hdr);
fs/nfs/localio.c
61
static void nfs_local_do_read(struct nfs_local_kiocb *iocb,
fs/nfs/localio.c
610
static inline void nfs_local_pgio_aio_complete(struct nfs_local_kiocb *iocb)
fs/nfs/localio.c
612
INIT_WORK(&iocb->work, iocb->aio_complete_work);
fs/nfs/localio.c
613
queue_work(nfsiod_workqueue, &iocb->work);
fs/nfs/localio.c
616
static void nfs_local_read_done(struct nfs_local_kiocb *iocb)
fs/nfs/localio.c
618
struct nfs_pgio_header *hdr = iocb->hdr;
fs/nfs/localio.c
619
struct file *filp = iocb->kiocb.ki_filp;
fs/nfs/localio.c
622
if ((iocb->kiocb.ki_flags & IOCB_DIRECT) && status == -EINVAL) {
fs/nfs/localio.c
63
static void nfs_local_do_write(struct nfs_local_kiocb *iocb,
fs/nfs/localio.c
642
static inline void nfs_local_read_iocb_done(struct nfs_local_kiocb *iocb)
fs/nfs/localio.c
644
nfs_local_read_done(iocb);
fs/nfs/localio.c
645
nfs_local_pgio_release(iocb);
fs/nfs/localio.c
650
struct nfs_local_kiocb *iocb =
fs/nfs/localio.c
653
nfs_local_read_iocb_done(iocb);
fs/nfs/localio.c
658
struct nfs_local_kiocb *iocb =
fs/nfs/localio.c
662
if (unlikely(!nfs_local_pgio_done(iocb, ret)))
fs/nfs/localio.c
665
nfs_local_pgio_aio_complete(iocb); /* Calls nfs_local_read_aio_complete_work */
fs/nfs/localio.c
670
struct nfs_local_kiocb *iocb =
fs/nfs/localio.c
672
struct file *filp = iocb->kiocb.ki_filp;
fs/nfs/localio.c
676
n_iters = atomic_read(&iocb->n_iters);
fs/nfs/localio.c
678
if (iocb->iter_is_dio_aligned[i]) {
fs/nfs/localio.c
679
iocb->kiocb.ki_flags |= IOCB_DIRECT;
fs/nfs/localio.c
681
if (i == iocb->end_iter_index) {
fs/nfs/localio.c
682
iocb->kiocb.ki_complete = nfs_local_read_aio_complete;
fs/nfs/localio.c
683
iocb->aio_complete_work = nfs_local_read_aio_complete_work;
fs/nfs/localio.c
686
iocb->kiocb.ki_flags &= ~IOCB_DIRECT;
fs/nfs/localio.c
689
status = filp->f_op->read_iter(&iocb->kiocb, &iocb->iters[i]);
fs/nfs/localio.c
694
if (nfs_local_pgio_done(iocb, status) || status < 0 ||
fs/nfs/localio.c
695
(size_t)status < iov_iter_count(&iocb->iters[i])) {
fs/nfs/localio.c
696
nfs_local_read_iocb_done(iocb);
fs/nfs/localio.c
702
static void nfs_local_do_read(struct nfs_local_kiocb *iocb,
fs/nfs/localio.c
705
struct nfs_pgio_header *hdr = iocb->hdr;
fs/nfs/localio.c
713
INIT_WORK(&iocb->work, nfs_local_call_read);
fs/nfs/localio.c
714
queue_work(nfslocaliod_workqueue, &iocb->work);
fs/nfs/localio.c
779
static void nfs_local_vfs_getattr(struct nfs_local_kiocb *iocb)
fs/nfs/localio.c
782
struct file *filp = iocb->kiocb.ki_filp;
fs/nfs/localio.c
783
struct nfs_pgio_header *hdr = iocb->hdr;
fs/nfs/localio.c
811
static void nfs_local_write_done(struct nfs_local_kiocb *iocb)
fs/nfs/localio.c
813
struct nfs_pgio_header *hdr = iocb->hdr;
fs/nfs/localio.c
818
if ((iocb->kiocb.ki_flags & IOCB_DIRECT) && status == -EINVAL) {
fs/nfs/localio.c
827
static inline void nfs_local_write_iocb_done(struct nfs_local_kiocb *iocb)
fs/nfs/localio.c
829
nfs_local_write_done(iocb);
fs/nfs/localio.c
830
nfs_local_vfs_getattr(iocb);
fs/nfs/localio.c
831
nfs_local_pgio_release(iocb);
fs/nfs/localio.c
836
struct nfs_local_kiocb *iocb =
fs/nfs/localio.c
839
nfs_local_write_iocb_done(iocb);
fs/nfs/localio.c
844
struct nfs_local_kiocb *iocb =
fs/nfs/localio.c
848
if (unlikely(!nfs_local_pgio_done(iocb, ret)))
fs/nfs/localio.c
851
nfs_local_pgio_aio_complete(iocb); /* Calls nfs_local_write_aio_complete_work */
fs/nfs/localio.c
856
struct nfs_local_kiocb *iocb =
fs/nfs/localio.c
858
struct file *filp = iocb->kiocb.ki_filp;
fs/nfs/localio.c
866
n_iters = atomic_read(&iocb->n_iters);
fs/nfs/localio.c
870
if (iocb->iter_is_dio_aligned[i]) {
fs/nfs/localio.c
871
iocb->kiocb.ki_flags |= IOCB_DIRECT;
fs/nfs/localio.c
873
if (i == iocb->end_iter_index) {
fs/nfs/localio.c
874
iocb->kiocb.ki_complete = nfs_local_write_aio_complete;
fs/nfs/localio.c
875
iocb->aio_complete_work = nfs_local_write_aio_complete_work;
fs/nfs/localio.c
878
iocb->kiocb.ki_flags &= ~IOCB_DIRECT;
fs/nfs/localio.c
881
status = filp->f_op->write_iter(&iocb->kiocb, &iocb->iters[i]);
fs/nfs/localio.c
886
icount = iov_iter_count(&iocb->iters[i]);
fs/nfs/localio.c
887
if (nfs_local_pgio_done(iocb, status) || status < 0 ||
fs/nfs/localio.c
891
iocb->hdr->req->wb_lock_context;
fs/nfs/localio.c
896
nfs_local_write_iocb_done(iocb);
fs/nfs/localio.c
905
static void nfs_local_do_write(struct nfs_local_kiocb *iocb,
fs/nfs/localio.c
908
struct nfs_pgio_header *hdr = iocb->hdr;
fs/nfs/localio.c
921
iocb->kiocb.ki_flags |= IOCB_DSYNC;
fs/nfs/localio.c
924
iocb->kiocb.ki_flags |= IOCB_DSYNC|IOCB_SYNC;
fs/nfs/localio.c
931
INIT_WORK(&iocb->work, nfs_local_call_write);
fs/nfs/localio.c
932
queue_work(nfslocaliod_workqueue, &iocb->work);
fs/nfs/localio.c
939
struct nfs_local_kiocb *iocb;
fs/nfs/localio.c
955
iocb = nfs_local_iocb_alloc(hdr, file, gfp_mask);
fs/nfs/localio.c
956
if (iocb == NULL)
fs/nfs/localio.c
958
iocb->hdr = hdr;
fs/nfs/localio.c
959
iocb->localio = localio;
fs/nfs/localio.c
961
nfs_local_iters_init(iocb, rw);
fs/nfs/localio.c
963
return iocb;
fs/nfs/localio.c
970
struct nfs_local_kiocb *iocb;
fs/nfs/localio.c
976
iocb = nfs_local_iocb_init(hdr, localio);
fs/nfs/localio.c
977
if (IS_ERR(iocb))
fs/nfs/localio.c
978
return PTR_ERR(iocb);
fs/nfs/localio.c
982
nfs_local_do_read(iocb, call_ops);
fs/nfs/localio.c
985
nfs_local_do_write(iocb, call_ops);
fs/nfs/localio.c
994
nfs_local_iocb_release(iocb);
fs/nfs/nfstrace.h
1091
const struct kiocb *iocb,
fs/nfs/nfstrace.h
1095
TP_ARGS(iocb, iter),
fs/nfs/nfstrace.h
1108
const struct inode *inode = file_inode(iocb->ki_filp);
fs/nfs/nfstrace.h
1115
__entry->offset = iocb->ki_pos;
fs/nfs/nfstrace.h
1117
__entry->flags = iocb->ki_flags;
fs/nfs/nfstrace.h
1133
const struct kiocb *iocb, \
fs/nfs/nfstrace.h
1136
TP_ARGS(iocb, iter))
fs/nfsd/vfs.c
1294
struct kiocb *iocb)
fs/nfsd/vfs.c
1300
segment->flags = iocb->ki_flags;
fs/nfsd/vfs.c
1305
unsigned int nvecs, struct kiocb *iocb,
fs/nfsd/vfs.c
1313
loff_t offset = iocb->ki_pos;
fs/nfsd/vfs.c
1338
nvecs, total, 0, prefix, iocb);
fs/nfsd/vfs.c
1341
total, prefix, middle, iocb);
fs/nfsd/vfs.c
1357
prefix + middle, suffix, iocb);
fs/nfsd/vfs.c
1364
total, iocb);
fs/nilfs2/inode.c
221
static int nilfs_write_begin(const struct kiocb *iocb,
fs/nilfs2/inode.c
241
static int nilfs_write_end(const struct kiocb *iocb,
fs/nilfs2/inode.c
253
copied = generic_write_end(iocb, mapping, pos, len, copied, folio,
fs/nilfs2/inode.c
261
nilfs_direct_IO(struct kiocb *iocb, struct iov_iter *iter)
fs/nilfs2/inode.c
263
struct inode *inode = file_inode(iocb->ki_filp);
fs/nilfs2/inode.c
269
return blockdev_direct_IO(iocb, inode, iter, nilfs_get_block);
fs/ntfs/file.c
438
static ssize_t ntfs_file_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/ntfs/file.c
440
struct inode *vi = file_inode(iocb->ki_filp);
fs/ntfs/file.c
447
if (NInoCompressed(NTFS_I(vi)) && iocb->ki_flags & IOCB_DIRECT)
fs/ntfs/file.c
452
if (iocb->ki_flags & IOCB_DIRECT) {
fs/ntfs/file.c
455
if ((iocb->ki_pos | count) & (sb->s_blocksize - 1)) {
fs/ntfs/file.c
460
file_accessed(iocb->ki_filp);
fs/ntfs/file.c
461
ret = iomap_dio_rw(iocb, to, &ntfs_read_iomap_ops, NULL, 0,
fs/ntfs/file.c
464
ret = generic_file_read_iter(iocb, to);
fs/ntfs/file.c
473
static int ntfs_file_write_dio_end_io(struct kiocb *iocb, ssize_t size,
fs/ntfs/file.c
476
struct inode *inode = file_inode(iocb->ki_filp);
fs/ntfs/file.c
482
if (i_size_read(inode) < iocb->ki_pos + size) {
fs/ntfs/file.c
483
i_size_write(inode, iocb->ki_pos + size);
fs/ntfs/file.c
495
static ssize_t ntfs_dio_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/ntfs/file.c
499
ret = iomap_dio_rw(iocb, from, &ntfs_dio_iomap_ops,
fs/ntfs/file.c
511
offset = iocb->ki_pos;
fs/ntfs/file.c
512
iocb->ki_flags &= ~IOCB_DIRECT;
fs/ntfs/file.c
513
written = iomap_file_buffered_write(iocb, from,
fs/ntfs/file.c
522
end = iocb->ki_pos + written - 1;
fs/ntfs/file.c
523
ret2 = filemap_write_and_wait_range(iocb->ki_filp->f_mapping,
fs/ntfs/file.c
529
invalidate_mapping_pages(iocb->ki_filp->f_mapping,
fs/ntfs/file.c
538
static ssize_t ntfs_file_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/ntfs/file.c
540
struct file *file = iocb->ki_filp;
fs/ntfs/file.c
559
if (NInoCompressed(ni) && iocb->ki_flags & IOCB_DIRECT)
fs/ntfs/file.c
562
if (iocb->ki_flags & IOCB_NOWAIT) {
fs/ntfs/file.c
568
ret = generic_write_checks(iocb, from);
fs/ntfs/file.c
572
err = file_modified(iocb->ki_filp);
fs/ntfs/file.c
581
pos = iocb->ki_pos;
fs/ntfs/file.c
590
iocb->ki_pos += ret;
fs/ntfs/file.c
594
if (NInoNonResident(ni) && iocb->ki_flags & IOCB_DIRECT)
fs/ntfs/file.c
595
ret = ntfs_dio_write_iter(iocb, from);
fs/ntfs/file.c
597
ret = iomap_file_buffered_write(iocb, from, &ntfs_write_iomap_ops,
fs/ntfs/file.c
614
ret = generic_write_sync(iocb, ret);
fs/ntfs3/file.c
1177
iocb->ki_pos += written;
fs/ntfs3/file.c
1178
if (iocb->ki_pos > ni->i_valid)
fs/ntfs3/file.c
1179
ni->i_valid = iocb->ki_pos;
fs/ntfs3/file.c
1180
if (iocb->ki_pos > i_size)
fs/ntfs3/file.c
1181
i_size_write(inode, iocb->ki_pos);
fs/ntfs3/file.c
1220
static ssize_t ntfs_file_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/ntfs3/file.c
1222
struct file *file = iocb->ki_filp;
fs/ntfs3/file.c
1229
if (iocb->ki_flags & IOCB_NOWAIT)
fs/ntfs3/file.c
1238
if (is_compressed(ni) && (iocb->ki_flags & IOCB_DIRECT)) {
fs/ntfs3/file.c
1244
ret = generic_write_checks(iocb, from);
fs/ntfs3/file.c
1248
err = file_modified(iocb->ki_filp);
fs/ntfs3/file.c
1260
vbo = iocb->ki_pos;
fs/ntfs3/file.c
1274
ret = ntfs_compress_write(iocb, from);
fs/ntfs3/file.c
1285
if (!(iocb->ki_flags & IOCB_DIRECT) ||
fs/ntfs3/file.c
1286
!ntfs_should_use_dio(iocb, from)) {
fs/ntfs3/file.c
1287
iocb->ki_flags &= ~IOCB_DIRECT;
fs/ntfs3/file.c
1289
ret = iomap_file_buffered_write(iocb, from, &ntfs_iomap_ops,
fs/ntfs3/file.c
1294
ret = generic_write_sync(iocb, ret);
fs/ntfs3/file.c
1306
ret = iomap_dio_rw(iocb, from, &ntfs_iomap_ops, NULL,
fs/ntfs3/file.c
1316
vbo = iocb->ki_pos;
fs/ntfs3/file.c
1318
iocb->ki_flags &= ~IOCB_DIRECT;
fs/ntfs3/file.c
1319
err = iomap_file_buffered_write(iocb, from, &ntfs_iomap_ops,
fs/ntfs3/file.c
51
static bool ntfs_should_use_dio(struct kiocb *iocb, struct iov_iter *iter)
fs/ntfs3/file.c
53
struct inode *inode = file_inode(iocb->ki_filp);
fs/ntfs3/file.c
59
return IS_ALIGNED(iocb->ki_pos | iov_iter_alignment(iter), dio_align);
fs/ntfs3/file.c
815
static ssize_t ntfs_file_read_iter(struct kiocb *iocb, struct iov_iter *iter)
fs/ntfs3/file.c
817
struct file *file = iocb->ki_filp;
fs/ntfs3/file.c
833
if (iocb->ki_flags & IOCB_DIRECT) {
fs/ntfs3/file.c
843
if (!(iocb->ki_flags & IOCB_DIRECT) ||
fs/ntfs3/file.c
844
!ntfs_should_use_dio(iocb, iter)) {
fs/ntfs3/file.c
845
iocb->ki_flags &= ~IOCB_DIRECT;
fs/ntfs3/file.c
846
return generic_file_read_iter(iocb, iter);
fs/ntfs3/file.c
849
if (iocb->ki_flags & IOCB_NOWAIT) {
fs/ntfs3/file.c
856
vbo = iocb->ki_pos;
fs/ntfs3/file.c
875
err = iomap_dio_rw(iocb, iter, &ntfs_iomap_ops, NULL, dio_flags,
fs/ntfs3/file.c
891
iocb->ki_pos += bytes;
fs/ntfs3/file.c
897
file_accessed(iocb->ki_filp);
fs/ntfs3/file.c
965
static ssize_t ntfs_compress_write(struct kiocb *iocb, struct iov_iter *from)
fs/ntfs3/file.c
968
struct file *file = iocb->ki_filp;
fs/ntfs3/file.c
970
loff_t pos = iocb->ki_pos;
fs/ocfs2/aops.c
1861
static int ocfs2_write_begin(const struct kiocb *iocb,
fs/ocfs2/aops.c
2053
static int ocfs2_write_end(const struct kiocb *iocb,
fs/ocfs2/aops.c
2406
static int ocfs2_dio_end_io(struct kiocb *iocb,
fs/ocfs2/aops.c
2411
struct inode *inode = file_inode(iocb->ki_filp);
fs/ocfs2/aops.c
2416
BUG_ON(!ocfs2_iocb_is_rw_locked(iocb));
fs/ocfs2/aops.c
2429
ocfs2_iocb_clear_rw_locked(iocb);
fs/ocfs2/aops.c
2431
level = ocfs2_iocb_rw_locked_level(iocb);
fs/ocfs2/aops.c
2436
static ssize_t ocfs2_direct_IO(struct kiocb *iocb, struct iov_iter *iter)
fs/ocfs2/aops.c
2438
struct file *file = iocb->ki_filp;
fs/ocfs2/aops.c
2451
if (iocb->ki_pos + iter->count > i_size_read(inode) &&
fs/ocfs2/aops.c
2460
return __blockdev_direct_IO(iocb, inode, inode->i_sb->s_bdev,
fs/ocfs2/aops.h
46
#define ocfs2_iocb_is_rw_locked(iocb) \
fs/ocfs2/aops.h
47
test_bit(0, (unsigned long *)&iocb->private)
fs/ocfs2/aops.h
48
static inline void ocfs2_iocb_set_rw_locked(struct kiocb *iocb, int level)
fs/ocfs2/aops.h
50
set_bit(0, (unsigned long *)&iocb->private);
fs/ocfs2/aops.h
52
set_bit(1, (unsigned long *)&iocb->private);
fs/ocfs2/aops.h
54
clear_bit(1, (unsigned long *)&iocb->private);
fs/ocfs2/aops.h
68
#define ocfs2_iocb_init_rw_locked(iocb) \
fs/ocfs2/aops.h
69
(iocb->private = NULL)
fs/ocfs2/aops.h
70
#define ocfs2_iocb_clear_rw_locked(iocb) \
fs/ocfs2/aops.h
71
clear_bit(OCFS2_IOCB_RW_LOCK, (unsigned long *)&iocb->private)
fs/ocfs2/aops.h
72
#define ocfs2_iocb_rw_locked_level(iocb) \
fs/ocfs2/aops.h
73
test_bit(OCFS2_IOCB_RW_LOCK_LEVEL, (unsigned long *)&iocb->private)
fs/ocfs2/file.c
2377
static ssize_t ocfs2_file_write_iter(struct kiocb *iocb,
fs/ocfs2/file.c
2384
struct file *file = iocb->ki_filp;
fs/ocfs2/file.c
2390
int append_write = ((iocb->ki_pos + count) >=
fs/ocfs2/file.c
2392
int direct_io = iocb->ki_flags & IOCB_DIRECT ? 1 : 0;
fs/ocfs2/file.c
2393
int nowait = iocb->ki_flags & IOCB_NOWAIT ? 1 : 0;
fs/ocfs2/file.c
2413
ocfs2_iocb_init_rw_locked(iocb);
fs/ocfs2/file.c
2455
ret = generic_write_checks(iocb, from);
fs/ocfs2/file.c
2463
ret = ocfs2_prepare_inode_for_write(file, iocb->ki_pos, count, !nowait);
fs/ocfs2/file.c
2470
if (direct_io && !is_sync_kiocb(iocb) &&
fs/ocfs2/file.c
2471
ocfs2_is_io_unaligned(inode, count, iocb->ki_pos)) {
fs/ocfs2/file.c
2475
saved_ki_complete = xchg(&iocb->ki_complete, NULL);
fs/ocfs2/file.c
2479
ocfs2_iocb_set_rw_locked(iocb, rw_level);
fs/ocfs2/file.c
2481
written = __generic_file_write_iter(iocb, from);
fs/ocfs2/file.c
2494
if ((written == -EIOCBQUEUED) || (!ocfs2_iocb_is_rw_locked(iocb))) {
fs/ocfs2/file.c
2504
iocb->ki_pos - written,
fs/ocfs2/file.c
2505
iocb->ki_pos - 1);
fs/ocfs2/file.c
2517
iocb->ki_pos - written,
fs/ocfs2/file.c
2518
iocb->ki_pos - 1);
fs/ocfs2/file.c
2523
xchg(&iocb->ki_complete, saved_ki_complete);
fs/ocfs2/file.c
2536
static ssize_t ocfs2_file_read_iter(struct kiocb *iocb,
fs/ocfs2/file.c
2540
struct file *filp = iocb->ki_filp;
fs/ocfs2/file.c
2542
int direct_io = iocb->ki_flags & IOCB_DIRECT ? 1 : 0;
fs/ocfs2/file.c
2543
int nowait = iocb->ki_flags & IOCB_NOWAIT ? 1 : 0;
fs/ocfs2/file.c
2561
ocfs2_iocb_init_rw_locked(iocb);
fs/ocfs2/file.c
2580
ocfs2_iocb_set_rw_locked(iocb, rw_level);
fs/ocfs2/file.c
2601
ret = generic_file_read_iter(iocb, to);
fs/ocfs2/file.c
2608
if (ret == -EIOCBQUEUED || !ocfs2_iocb_is_rw_locked(iocb)) {
fs/omfs/file.c
313
static int omfs_write_begin(const struct kiocb *iocb,
fs/orangefs/devorangefs-req.c
361
static ssize_t orangefs_devreq_write_iter(struct kiocb *iocb,
fs/orangefs/file.c
323
static ssize_t orangefs_file_read_iter(struct kiocb *iocb,
fs/orangefs/file.c
329
down_read(&file_inode(iocb->ki_filp)->i_rwsem);
fs/orangefs/file.c
330
ret = orangefs_revalidate_mapping(file_inode(iocb->ki_filp));
fs/orangefs/file.c
334
ret = generic_file_read_iter(iocb, iter);
fs/orangefs/file.c
336
up_read(&file_inode(iocb->ki_filp)->i_rwsem);
fs/orangefs/file.c
360
static ssize_t orangefs_file_write_iter(struct kiocb *iocb,
fs/orangefs/file.c
366
if (iocb->ki_pos > i_size_read(file_inode(iocb->ki_filp))) {
fs/orangefs/file.c
367
ret = orangefs_revalidate_mapping(file_inode(iocb->ki_filp));
fs/orangefs/file.c
372
ret = generic_file_write_iter(iocb, iter);
fs/orangefs/inode.c
306
static int orangefs_write_begin(const struct kiocb *iocb,
fs/orangefs/inode.c
362
static int orangefs_write_end(const struct kiocb *iocb,
fs/orangefs/inode.c
395
mark_inode_dirty_sync(file_inode(iocb->ki_filp));
fs/orangefs/inode.c
493
static ssize_t orangefs_direct_IO(struct kiocb *iocb,
fs/orangefs/inode.c
504
struct file *file = iocb->ki_filp;
fs/orangefs/inode.c
505
loff_t pos = iocb->ki_pos;
fs/overlayfs/file.c
290
static void ovl_file_end_write(struct kiocb *iocb, ssize_t ret)
fs/overlayfs/file.c
292
ovl_file_modified(iocb->ki_filp);
fs/overlayfs/file.c
323
static ssize_t ovl_read_iter(struct kiocb *iocb, struct iov_iter *iter)
fs/overlayfs/file.c
325
struct file *file = iocb->ki_filp;
fs/overlayfs/file.c
339
return backing_file_read_iter(realfile, iter, iocb, iocb->ki_flags,
fs/overlayfs/file.c
343
static ssize_t ovl_write_iter(struct kiocb *iocb, struct iov_iter *iter)
fs/overlayfs/file.c
345
struct file *file = iocb->ki_filp;
fs/overlayfs/file.c
349
int ifl = iocb->ki_flags;
fs/overlayfs/file.c
370
ret = backing_file_write_iter(realfile, iter, iocb, ifl, &ctx);
fs/overlayfs/file.c
388
struct kiocb iocb;
fs/overlayfs/file.c
394
init_sync_kiocb(&iocb, in);
fs/overlayfs/file.c
395
iocb.ki_pos = *ppos;
fs/overlayfs/file.c
396
ret = backing_file_splice_read(realfile, &iocb, pipe, len, flags, &ctx);
fs/overlayfs/file.c
397
*ppos = iocb.ki_pos;
fs/overlayfs/file.c
420
struct kiocb iocb;
fs/overlayfs/file.c
431
init_sync_kiocb(&iocb, out);
fs/overlayfs/file.c
432
iocb.ki_pos = *ppos;
fs/overlayfs/file.c
433
ret = backing_file_splice_write(pipe, realfile, &iocb, len, flags, &ctx);
fs/overlayfs/file.c
434
*ppos = iocb.ki_pos;
fs/pipe.c
361
anon_pipe_read(struct kiocb *iocb, struct iov_iter *to)
fs/pipe.c
364
struct file *filp = iocb->ki_filp;
fs/pipe.c
467
(iocb->ki_flags & IOCB_NOWAIT)) {
fs/pipe.c
499
fifo_pipe_read(struct kiocb *iocb, struct iov_iter *to)
fs/pipe.c
501
int ret = anon_pipe_read(iocb, to);
fs/pipe.c
503
file_accessed(iocb->ki_filp);
fs/pipe.c
523
anon_pipe_write(struct kiocb *iocb, struct iov_iter *from)
fs/pipe.c
525
struct file *filp = iocb->ki_filp;
fs/pipe.c
556
if ((iocb->ki_flags & IOCB_NOSIGNAL) == 0)
fs/pipe.c
597
if ((iocb->ki_flags & IOCB_NOSIGNAL) == 0)
fs/pipe.c
647
(iocb->ki_flags & IOCB_NOWAIT)) {
fs/pipe.c
701
fifo_pipe_write(struct kiocb *iocb, struct iov_iter *from)
fs/pipe.c
703
int ret = anon_pipe_write(iocb, from);
fs/pipe.c
705
struct file *filp = iocb->ki_filp;
fs/proc/inode.c
289
static ssize_t proc_reg_read_iter(struct kiocb *iocb, struct iov_iter *iter)
fs/proc/inode.c
291
struct proc_dir_entry *pde = PDE(file_inode(iocb->ki_filp));
fs/proc/inode.c
295
return pde->proc_ops->proc_read_iter(iocb, iter);
fs/proc/inode.c
299
ret = pde->proc_ops->proc_read_iter(iocb, iter);
fs/proc/kcore.c
324
static ssize_t read_kcore_iter(struct kiocb *iocb, struct iov_iter *iter)
fs/proc/kcore.c
326
struct file *file = iocb->ki_filp;
fs/proc/kcore.c
328
loff_t *fpos = &iocb->ki_pos;
fs/proc/proc_sysctl.c
553
static ssize_t proc_sys_call_handler(struct kiocb *iocb, struct iov_iter *iter,
fs/proc/proc_sysctl.c
556
struct inode *inode = file_inode(iocb->ki_filp);
fs/proc/proc_sysctl.c
595
&iocb->ki_pos);
fs/proc/proc_sysctl.c
600
error = table->proc_handler(table, write, kbuf, &count, &iocb->ki_pos);
fs/proc/proc_sysctl.c
619
static ssize_t proc_sys_read(struct kiocb *iocb, struct iov_iter *iter)
fs/proc/proc_sysctl.c
621
return proc_sys_call_handler(iocb, iter, 0);
fs/proc/proc_sysctl.c
624
static ssize_t proc_sys_write(struct kiocb *iocb, struct iov_iter *iter)
fs/proc/proc_sysctl.c
626
return proc_sys_call_handler(iocb, iter, 1);
fs/proc/vmcore.c
430
static ssize_t read_vmcore(struct kiocb *iocb, struct iov_iter *iter)
fs/proc/vmcore.c
432
return __read_vmcore(iter, &iocb->ki_pos);
fs/read_write.c
1737
int generic_write_checks_count(struct kiocb *iocb, loff_t *count)
fs/read_write.c
1739
struct file *file = iocb->ki_filp;
fs/read_write.c
1748
if (iocb->ki_flags & IOCB_APPEND)
fs/read_write.c
1749
iocb->ki_pos = i_size_read(inode);
fs/read_write.c
1751
if ((iocb->ki_flags & IOCB_NOWAIT) &&
fs/read_write.c
1752
!((iocb->ki_flags & IOCB_DIRECT) ||
fs/read_write.c
1756
return generic_write_check_limits(iocb->ki_filp, iocb->ki_pos, count);
fs/read_write.c
1767
ssize_t generic_write_checks(struct kiocb *iocb, struct iov_iter *from)
fs/read_write.c
1772
ret = generic_write_checks_count(iocb, &count);
fs/read_write.c
1804
int generic_atomic_write_valid(struct kiocb *iocb, struct iov_iter *iter)
fs/read_write.c
1814
if (!IS_ALIGNED(iocb->ki_pos, len))
fs/read_write.c
1817
if (!(iocb->ki_flags & IOCB_DIRECT))
fs/read_write.c
869
ssize_t vfs_iocb_iter_read(struct file *file, struct kiocb *iocb,
fs/read_write.c
885
ret = rw_verify_area(READ, file, &iocb->ki_pos, tot_len);
fs/read_write.c
889
ret = file->f_op->read_iter(iocb, iter);
fs/read_write.c
929
ssize_t vfs_iocb_iter_write(struct file *file, struct kiocb *iocb,
fs/read_write.c
945
ret = rw_verify_area(WRITE, file, &iocb->ki_pos, tot_len);
fs/read_write.c
949
kiocb_start_write(iocb);
fs/read_write.c
950
ret = file->f_op->write_iter(iocb, iter);
fs/read_write.c
952
kiocb_end_write(iocb);
fs/seq_file.c
172
ssize_t seq_read_iter(struct kiocb *iocb, struct iov_iter *iter)
fs/seq_file.c
174
struct seq_file *m = iocb->ki_filp->private_data;
fs/seq_file.c
189
if (iocb->ki_pos == 0) {
fs/seq_file.c
195
if (unlikely(iocb->ki_pos != m->read_pos)) {
fs/seq_file.c
196
while ((err = traverse(m, iocb->ki_pos)) == -EAGAIN)
fs/seq_file.c
205
m->read_pos = iocb->ki_pos;
fs/seq_file.c
290
iocb->ki_pos += copied;
fs/signalfd.c
201
static ssize_t signalfd_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/signalfd.c
203
struct file *file = iocb->ki_filp;
fs/signalfd.c
214
nonblock = file->f_flags & O_NONBLOCK || iocb->ki_flags & IOCB_NOWAIT;
fs/smb/client/cifsfs.h
107
ssize_t cifs_strict_readv(struct kiocb *iocb, struct iov_iter *to);
fs/smb/client/cifsfs.h
108
ssize_t cifs_strict_writev(struct kiocb *iocb, struct iov_iter *from);
fs/smb/client/cifsfs.h
109
ssize_t cifs_file_write_iter(struct kiocb *iocb, struct iov_iter *from);
fs/smb/client/cifsfs.h
110
ssize_t cifs_direct_write_iter(struct kiocb *iocb, struct iov_iter *from);
fs/smb/client/cifsfs.h
111
ssize_t cifs_loose_read_iter(struct kiocb *iocb, struct iov_iter *iter);
fs/smb/client/file.c
2556
static void cifs_update_i_blocks_after_write(struct kiocb *iocb,
fs/smb/client/file.c
2559
struct inode *inode = file_inode(iocb->ki_filp);
fs/smb/client/file.c
2560
loff_t end = iocb->ki_pos;
fs/smb/client/file.c
2945
cifs_writev(struct kiocb *iocb, struct iov_iter *from)
fs/smb/client/file.c
2947
struct file *file = iocb->ki_filp;
fs/smb/client/file.c
2965
rc = generic_write_checks(iocb, from);
fs/smb/client/file.c
2970
(cifs_find_lock_conflict(cfile, iocb->ki_pos, iov_iter_count(from),
fs/smb/client/file.c
2977
rc = netfs_buffered_write_iter_locked(iocb, from, NULL);
fs/smb/client/file.c
2978
cifs_update_i_blocks_after_write(iocb, rc);
fs/smb/client/file.c
2984
rc = generic_write_sync(iocb, rc);
fs/smb/client/file.c
2989
cifs_strict_writev(struct kiocb *iocb, struct iov_iter *from)
fs/smb/client/file.c
2991
struct inode *inode = file_inode(iocb->ki_filp);
fs/smb/client/file.c
2995
iocb->ki_filp->private_data;
fs/smb/client/file.c
3007
written = netfs_file_write_iter(iocb, from);
fs/smb/client/file.c
3008
cifs_update_i_blocks_after_write(iocb, written);
fs/smb/client/file.c
3011
written = cifs_writev(iocb, from);
fs/smb/client/file.c
3020
written = netfs_file_write_iter(iocb, from);
fs/smb/client/file.c
3021
cifs_update_i_blocks_after_write(iocb, written);
fs/smb/client/file.c
3040
ssize_t cifs_direct_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/smb/client/file.c
3044
written = netfs_file_write_iter(iocb, from);
fs/smb/client/file.c
3045
cifs_update_i_blocks_after_write(iocb, written);
fs/smb/client/file.c
3049
ssize_t cifs_loose_read_iter(struct kiocb *iocb, struct iov_iter *iter)
fs/smb/client/file.c
3052
struct inode *inode = file_inode(iocb->ki_filp);
fs/smb/client/file.c
3054
if (iocb->ki_flags & IOCB_DIRECT)
fs/smb/client/file.c
3055
return netfs_unbuffered_read_iter(iocb, iter);
fs/smb/client/file.c
3061
return netfs_file_read_iter(iocb, iter);
fs/smb/client/file.c
3064
ssize_t cifs_file_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/smb/client/file.c
3066
struct inode *inode = file_inode(iocb->ki_filp);
fs/smb/client/file.c
3071
if (iocb->ki_filp->f_flags & O_DIRECT) {
fs/smb/client/file.c
3072
written = netfs_unbuffered_write_iter(iocb, from);
fs/smb/client/file.c
3073
cifs_update_i_blocks_after_write(iocb, written);
fs/smb/client/file.c
3088
written = netfs_file_write_iter(iocb, from);
fs/smb/client/file.c
3089
cifs_update_i_blocks_after_write(iocb, written);
fs/smb/client/file.c
3103
cifs_strict_readv(struct kiocb *iocb, struct iov_iter *to)
fs/smb/client/file.c
3105
struct inode *inode = file_inode(iocb->ki_filp);
fs/smb/client/file.c
3109
iocb->ki_filp->private_data;
fs/smb/client/file.c
3122
return netfs_unbuffered_read_iter(iocb, to);
fs/smb/client/file.c
3125
if (iocb->ki_flags & IOCB_DIRECT)
fs/smb/client/file.c
3126
return netfs_unbuffered_read_iter(iocb, to);
fs/smb/client/file.c
3127
return netfs_buffered_read_iter(iocb, to);
fs/smb/client/file.c
3134
if (iocb->ki_flags & IOCB_DIRECT) {
fs/smb/client/file.c
3141
cfile, iocb->ki_pos, iov_iter_count(to),
fs/smb/client/file.c
3144
rc = netfs_unbuffered_read_iter_locked(iocb, to);
fs/smb/client/file.c
3154
cfile, iocb->ki_pos, iov_iter_count(to),
fs/smb/client/file.c
3157
rc = filemap_read(iocb, to, 0);
fs/smb/client/file.c
3475
static int cifs_swap_rw(struct kiocb *iocb, struct iov_iter *iter)
fs/smb/client/file.c
3480
ret = netfs_unbuffered_read_iter_locked(iocb, iter);
fs/smb/client/file.c
3482
ret = netfs_unbuffered_write_iter_locked(iocb, iter, NULL);
fs/timerfd.c
300
static ssize_t timerfd_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/timerfd.c
302
struct file *file = iocb->ki_filp;
fs/timerfd.c
311
if (file->f_flags & O_NONBLOCK || iocb->ki_flags & IOCB_NOWAIT)
fs/ubifs/file.c
1434
static ssize_t ubifs_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/ubifs/file.c
1436
int err = update_mctime(file_inode(iocb->ki_filp));
fs/ubifs/file.c
1440
return generic_file_write_iter(iocb, from);
fs/ubifs/file.c
407
static int ubifs_write_begin(const struct kiocb *iocb,
fs/ubifs/file.c
518
static int ubifs_write_end(const struct kiocb *iocb,
fs/udf/file.c
104
iocb->ki_pos + iov_iter_count(from))) {
fs/udf/file.c
112
retval = __generic_file_write_iter(iocb, from);
fs/udf/file.c
123
retval = generic_write_sync(iocb, retval);
fs/udf/file.c
89
static ssize_t udf_file_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/udf/file.c
92
struct file *file = iocb->ki_filp;
fs/udf/file.c
98
retval = generic_write_checks(iocb, from);
fs/udf/inode.c
250
static int udf_write_begin(const struct kiocb *iocb,
fs/udf/inode.c
255
struct file *file = iocb->ki_filp;
fs/udf/inode.c
279
static int udf_write_end(const struct kiocb *iocb,
fs/udf/inode.c
284
struct inode *inode = file_inode(iocb->ki_filp);
fs/udf/inode.c
288
return generic_write_end(iocb, mapping, pos, len, copied, folio,
fs/udf/inode.c
300
static ssize_t udf_direct_IO(struct kiocb *iocb, struct iov_iter *iter)
fs/udf/inode.c
302
struct file *file = iocb->ki_filp;
fs/udf/inode.c
311
ret = blockdev_direct_IO(iocb, inode, iter, udf_get_block);
fs/udf/inode.c
313
udf_write_failed(mapping, iocb->ki_pos + count);
fs/ufs/inode.c
477
static int ufs_write_begin(const struct kiocb *iocb,
fs/ufs/inode.c
491
static int ufs_write_end(const struct kiocb *iocb,
fs/ufs/inode.c
498
ret = generic_write_end(iocb, mapping, pos, len, copied, folio, fsdata);
fs/vboxsf/file.c
303
static int vboxsf_write_end(const struct kiocb *iocb,
fs/vboxsf/file.c
309
struct vboxsf_handle *sf_handle = iocb->ki_filp->private_data;
fs/xfs/xfs_file.c
1004
ret = xfs_ilock_iocb(iocb, iolock);
fs/xfs/xfs_file.c
1007
ret = xfs_file_write_checks(iocb, from, &iolock, NULL);
fs/xfs/xfs_file.c
1011
pos = iocb->ki_pos;
fs/xfs/xfs_file.c
1013
trace_xfs_file_dax_write(iocb, from);
fs/xfs/xfs_file.c
1014
ret = dax_iomap_rw(iocb, from, &xfs_dax_write_iomap_ops);
fs/xfs/xfs_file.c
1015
if (ret > 0 && iocb->ki_pos > i_size_read(inode)) {
fs/xfs/xfs_file.c
1016
i_size_write(inode, iocb->ki_pos);
fs/xfs/xfs_file.c
1029
ret = generic_write_sync(iocb, ret);
fs/xfs/xfs_file.c
1036
struct kiocb *iocb,
fs/xfs/xfs_file.c
1039
struct inode *inode = iocb->ki_filp->f_mapping->host;
fs/xfs/xfs_file.c
1047
ret = xfs_ilock_iocb(iocb, iolock);
fs/xfs/xfs_file.c
1051
ret = xfs_file_write_checks(iocb, from, &iolock, NULL);
fs/xfs/xfs_file.c
1055
trace_xfs_file_buffered_write(iocb, from);
fs/xfs/xfs_file.c
1056
ret = iomap_file_buffered_write(iocb, from,
fs/xfs/xfs_file.c
1094
ret = generic_write_sync(iocb, ret);
fs/xfs/xfs_file.c
1101
struct kiocb *iocb,
fs/xfs/xfs_file.c
1104
struct xfs_inode *ip = XFS_I(iocb->ki_filp->f_mapping->host);
fs/xfs/xfs_file.c
1111
ret = xfs_zoned_write_space_reserve(mp, iocb, from, XFS_ZR_GREEDY, &ac);
fs/xfs/xfs_file.c
1115
ret = xfs_ilock_iocb(iocb, iolock);
fs/xfs/xfs_file.c
1119
ret = xfs_file_write_checks(iocb, from, &iolock, &ac);
fs/xfs/xfs_file.c
1131
(iocb->ki_pos & mp->m_blockmask));
fs/xfs/xfs_file.c
1136
trace_xfs_file_buffered_write(iocb, from);
fs/xfs/xfs_file.c
1137
ret = iomap_file_buffered_write(iocb, from,
fs/xfs/xfs_file.c
1156
ret = generic_write_sync(iocb, ret);
fs/xfs/xfs_file.c
1163
struct kiocb *iocb,
fs/xfs/xfs_file.c
1166
struct inode *inode = iocb->ki_filp->f_mapping->host;
fs/xfs/xfs_file.c
1179
if (iocb->ki_flags & IOCB_ATOMIC) {
fs/xfs/xfs_file.c
1186
ret = generic_atomic_write_valid(iocb, from);
fs/xfs/xfs_file.c
1192
return xfs_file_dax_write(iocb, from);
fs/xfs/xfs_file.c
1194
if (iocb->ki_flags & IOCB_DIRECT) {
fs/xfs/xfs_file.c
1201
ret = xfs_file_dio_write(iocb, from);
fs/xfs/xfs_file.c
1207
return xfs_file_buffered_write_zoned(iocb, from);
fs/xfs/xfs_file.c
1208
return xfs_file_buffered_write(iocb, from);
fs/xfs/xfs_file.c
187
struct kiocb *iocb,
fs/xfs/xfs_file.c
190
struct xfs_inode *ip = XFS_I(file_inode(iocb->ki_filp));
fs/xfs/xfs_file.c
192
if (iocb->ki_flags & IOCB_NOWAIT) {
fs/xfs/xfs_file.c
204
struct kiocb *iocb,
fs/xfs/xfs_file.c
208
struct xfs_inode *ip = XFS_I(file_inode(iocb->ki_filp));
fs/xfs/xfs_file.c
210
ret = xfs_ilock_iocb(iocb, *lock_mode);
fs/xfs/xfs_file.c
222
return xfs_ilock_iocb(iocb, *lock_mode);
fs/xfs/xfs_file.c
250
struct kiocb *iocb,
fs/xfs/xfs_file.c
253
struct xfs_inode *ip = XFS_I(file_inode(iocb->ki_filp));
fs/xfs/xfs_file.c
258
trace_xfs_file_direct_read(iocb, to);
fs/xfs/xfs_file.c
263
file_accessed(iocb->ki_filp);
fs/xfs/xfs_file.c
265
ret = xfs_ilock_iocb(iocb, XFS_IOLOCK_SHARED);
fs/xfs/xfs_file.c
268
if (mapping_stable_writes(iocb->ki_filp->f_mapping)) {
fs/xfs/xfs_file.c
272
ret = iomap_dio_rw(iocb, to, &xfs_read_iomap_ops, dio_ops, dio_flags,
fs/xfs/xfs_file.c
281
struct kiocb *iocb,
fs/xfs/xfs_file.c
284
struct xfs_inode *ip = XFS_I(iocb->ki_filp->f_mapping->host);
fs/xfs/xfs_file.c
287
trace_xfs_file_dax_read(iocb, to);
fs/xfs/xfs_file.c
292
ret = xfs_ilock_iocb(iocb, XFS_IOLOCK_SHARED);
fs/xfs/xfs_file.c
295
ret = dax_iomap_rw(iocb, to, &xfs_read_iomap_ops);
fs/xfs/xfs_file.c
298
file_accessed(iocb->ki_filp);
fs/xfs/xfs_file.c
304
struct kiocb *iocb,
fs/xfs/xfs_file.c
307
struct xfs_inode *ip = XFS_I(file_inode(iocb->ki_filp));
fs/xfs/xfs_file.c
310
trace_xfs_file_buffered_read(iocb, to);
fs/xfs/xfs_file.c
312
ret = xfs_ilock_iocb(iocb, XFS_IOLOCK_SHARED);
fs/xfs/xfs_file.c
315
ret = generic_file_read_iter(iocb, to);
fs/xfs/xfs_file.c
323
struct kiocb *iocb,
fs/xfs/xfs_file.c
326
struct inode *inode = file_inode(iocb->ki_filp);
fs/xfs/xfs_file.c
336
ret = xfs_file_dax_read(iocb, to);
fs/xfs/xfs_file.c
337
else if (iocb->ki_flags & IOCB_DIRECT)
fs/xfs/xfs_file.c
338
ret = xfs_file_dio_read(iocb, to);
fs/xfs/xfs_file.c
340
ret = xfs_file_buffered_read(iocb, to);
fs/xfs/xfs_file.c
384
struct kiocb *iocb,
fs/xfs/xfs_file.c
391
struct xfs_inode *ip = XFS_I(iocb->ki_filp->f_mapping->host);
fs/xfs/xfs_file.c
406
if (iocb->ki_pos <= isize) {
fs/xfs/xfs_file.c
412
if (iocb->ki_flags & IOCB_NOWAIT)
fs/xfs/xfs_file.c
440
trace_xfs_zero_eof(ip, isize, iocb->ki_pos - isize);
fs/xfs/xfs_file.c
443
error = xfs_zero_range(ip, isize, iocb->ki_pos - isize, ac, NULL);
fs/xfs/xfs_file.c
458
struct kiocb *iocb,
fs/xfs/xfs_file.c
463
struct inode *inode = iocb->ki_filp->f_mapping->host;
fs/xfs/xfs_file.c
469
error = generic_write_checks(iocb, from);
fs/xfs/xfs_file.c
473
if (iocb->ki_flags & IOCB_NOWAIT) {
fs/xfs/xfs_file.c
491
error = xfs_ilock_iocb(iocb, *iolock);
fs/xfs/xfs_file.c
509
if (iocb->ki_pos > i_size_read(inode)) {
fs/xfs/xfs_file.c
510
error = xfs_file_write_zero_eof(iocb, from, iolock, count,
fs/xfs/xfs_file.c
518
return kiocb_modified(iocb);
fs/xfs/xfs_file.c
524
struct kiocb *iocb,
fs/xfs/xfs_file.c
532
if (iocb->ki_flags & IOCB_NOWAIT)
fs/xfs/xfs_file.c
545
error = generic_write_check_limits(iocb->ki_filp, iocb->ki_pos, &count);
fs/xfs/xfs_file.c
601
struct kiocb *iocb,
fs/xfs/xfs_file.c
606
struct inode *inode = file_inode(iocb->ki_filp);
fs/xfs/xfs_file.c
612
trace_xfs_end_io_direct_write(ip, iocb->ki_pos, size);
fs/xfs/xfs_file.c
623
error = xfs_dio_endio_set_isize(inode, iocb->ki_pos, size);
fs/xfs/xfs_file.c
631
struct kiocb *iocb,
fs/xfs/xfs_file.c
636
struct inode *inode = file_inode(iocb->ki_filp);
fs/xfs/xfs_file.c
638
loff_t offset = iocb->ki_pos;
fs/xfs/xfs_file.c
667
if (iocb->ki_flags & IOCB_ATOMIC)
fs/xfs/xfs_file.c
743
struct kiocb *iocb,
fs/xfs/xfs_file.c
761
ret = xfs_ilock_iocb_for_write(iocb, &iolock);
fs/xfs/xfs_file.c
764
ret = xfs_file_write_checks(iocb, from, &iolock, ac);
fs/xfs/xfs_file.c
777
if (mapping_stable_writes(iocb->ki_filp->f_mapping))
fs/xfs/xfs_file.c
779
trace_xfs_file_direct_write(iocb, from);
fs/xfs/xfs_file.c
780
ret = iomap_dio_rw(iocb, from, ops, dops, dio_flags, ac, 0);
fs/xfs/xfs_file.c
792
struct kiocb *iocb,
fs/xfs/xfs_file.c
798
ret = xfs_zoned_write_space_reserve(ip->i_mount, iocb, from, 0, &ac);
fs/xfs/xfs_file.c
801
ret = xfs_file_dio_write_aligned(ip, iocb, from,
fs/xfs/xfs_file.c
821
struct kiocb *iocb,
fs/xfs/xfs_file.c
839
ret = xfs_ilock_iocb_for_write(iocb, &iolock);
fs/xfs/xfs_file.c
843
ret = xfs_file_write_checks(iocb, from, &iolock, NULL);
fs/xfs/xfs_file.c
853
trace_xfs_file_direct_write(iocb, from);
fs/xfs/xfs_file.c
854
if (mapping_stable_writes(iocb->ki_filp->f_mapping))
fs/xfs/xfs_file.c
856
ret = iomap_dio_rw(iocb, from, dops, &xfs_dio_write_ops, dio_flags,
fs/xfs/xfs_file.c
897
struct kiocb *iocb,
fs/xfs/xfs_file.c
911
if (iocb->ki_pos > isize || iocb->ki_pos + count >= isize) {
fs/xfs/xfs_file.c
912
if (iocb->ki_flags & IOCB_NOWAIT)
fs/xfs/xfs_file.c
919
ret = xfs_ilock_iocb_for_write(iocb, &iolock);
fs/xfs/xfs_file.c
928
trace_xfs_reflink_bounce_dio_write(iocb, from);
fs/xfs/xfs_file.c
933
ret = xfs_file_write_checks(iocb, from, &iolock, NULL);
fs/xfs/xfs_file.c
946
if (mapping_stable_writes(iocb->ki_filp->f_mapping))
fs/xfs/xfs_file.c
949
trace_xfs_file_direct_write(iocb, from);
fs/xfs/xfs_file.c
950
ret = iomap_dio_rw(iocb, from, &xfs_direct_write_iomap_ops,
fs/xfs/xfs_file.c
958
if (ret == -EAGAIN && !(iocb->ki_flags & IOCB_NOWAIT)) {
fs/xfs/xfs_file.c
972
struct kiocb *iocb,
fs/xfs/xfs_file.c
975
struct xfs_inode *ip = XFS_I(file_inode(iocb->ki_filp));
fs/xfs/xfs_file.c
980
if ((iocb->ki_pos | count) & target->bt_logical_sectormask)
fs/xfs/xfs_file.c
983
if ((iocb->ki_pos | count) & ip->i_mount->m_blockmask)
fs/xfs/xfs_file.c
984
return xfs_file_dio_write_unaligned(ip, iocb, from);
fs/xfs/xfs_file.c
986
return xfs_file_dio_write_zoned(ip, iocb, from);
fs/xfs/xfs_file.c
987
if (iocb->ki_flags & IOCB_ATOMIC)
fs/xfs/xfs_file.c
988
return xfs_file_dio_write_atomic(ip, iocb, from);
fs/xfs/xfs_file.c
989
return xfs_file_dio_write_aligned(ip, iocb, from,
fs/xfs/xfs_file.c
995
struct kiocb *iocb,
fs/xfs/xfs_file.c
998
struct inode *inode = iocb->ki_filp->f_mapping->host;
fs/xfs/xfs_healthmon.c
945
struct kiocb *iocb,
fs/xfs/xfs_healthmon.c
948
struct file *file = iocb->ki_filp;
fs/xfs/xfs_trace.h
1752
TP_PROTO(struct kiocb *iocb, struct iov_iter *iter),
fs/xfs/xfs_trace.h
1753
TP_ARGS(iocb, iter),
fs/xfs/xfs_trace.h
1762
__entry->dev = file_inode(iocb->ki_filp)->i_sb->s_dev;
fs/xfs/xfs_trace.h
1763
__entry->ino = file_inode(iocb->ki_filp)->i_ino;
fs/xfs/xfs_trace.h
1764
__entry->size = XFS_I(file_inode(iocb->ki_filp))->i_disk_size;
fs/xfs/xfs_trace.h
1765
__entry->offset = iocb->ki_pos;
fs/xfs/xfs_trace.h
1778
TP_PROTO(struct kiocb *iocb, struct iov_iter *iter), \
fs/xfs/xfs_trace.h
1779
TP_ARGS(iocb, iter))
fs/zonefs/file.c
357
static int zonefs_file_write_dio_end_io(struct kiocb *iocb, ssize_t size,
fs/zonefs/file.c
360
struct inode *inode = file_inode(iocb->ki_filp);
fs/zonefs/file.c
368
if (!is_sync_kiocb(iocb))
fs/zonefs/file.c
382
if (i_size_read(inode) < iocb->ki_pos + size) {
fs/zonefs/file.c
383
zonefs_update_stats(inode, iocb->ki_pos + size);
fs/zonefs/file.c
384
zonefs_i_size_write(inode, iocb->ki_pos + size);
fs/zonefs/file.c
425
static ssize_t zonefs_write_checks(struct kiocb *iocb, struct iov_iter *from)
fs/zonefs/file.c
427
struct file *file = iocb->ki_filp;
fs/zonefs/file.c
439
if ((iocb->ki_flags & IOCB_NOWAIT) && !(iocb->ki_flags & IOCB_DIRECT))
fs/zonefs/file.c
442
if (iocb->ki_flags & IOCB_APPEND) {
fs/zonefs/file.c
446
iocb->ki_pos = z->z_wpoffset;
fs/zonefs/file.c
450
count = zonefs_write_check_limits(file, iocb->ki_pos,
fs/zonefs/file.c
469
static ssize_t zonefs_file_dio_write(struct kiocb *iocb, struct iov_iter *from)
fs/zonefs/file.c
471
struct inode *inode = file_inode(iocb->ki_filp);
fs/zonefs/file.c
482
if (zonefs_zone_is_seq(z) && !is_sync_kiocb(iocb) &&
fs/zonefs/file.c
483
(iocb->ki_flags & IOCB_NOWAIT))
fs/zonefs/file.c
486
if (iocb->ki_flags & IOCB_NOWAIT) {
fs/zonefs/file.c
493
count = zonefs_write_checks(iocb, from);
fs/zonefs/file.c
499
if ((iocb->ki_pos | count) & (sb->s_blocksize - 1)) {
fs/zonefs/file.c
507
if (iocb->ki_pos != z->z_wpoffset) {
fs/zonefs/file.c
528
ret = iomap_dio_rw(iocb, from, &zonefs_write_iomap_ops,
fs/zonefs/file.c
554
static ssize_t zonefs_file_buffered_write(struct kiocb *iocb,
fs/zonefs/file.c
557
struct inode *inode = file_inode(iocb->ki_filp);
fs/zonefs/file.c
567
if (iocb->ki_flags & IOCB_NOWAIT) {
fs/zonefs/file.c
574
ret = zonefs_write_checks(iocb, from);
fs/zonefs/file.c
578
ret = iomap_file_buffered_write(iocb, from, &zonefs_write_iomap_ops,
fs/zonefs/file.c
586
ret = generic_write_sync(iocb, ret);
fs/zonefs/file.c
591
static ssize_t zonefs_file_write_iter(struct kiocb *iocb, struct iov_iter *from)
fs/zonefs/file.c
593
struct inode *inode = file_inode(iocb->ki_filp);
fs/zonefs/file.c
603
if (iocb->ki_pos >= z->z_capacity)
fs/zonefs/file.c
606
if (iocb->ki_flags & IOCB_DIRECT) {
fs/zonefs/file.c
607
ssize_t ret = zonefs_file_dio_write(iocb, from);
fs/zonefs/file.c
613
return zonefs_file_buffered_write(iocb, from);
fs/zonefs/file.c
616
static int zonefs_file_read_dio_end_io(struct kiocb *iocb, ssize_t size,
fs/zonefs/file.c
620
zonefs_io_error(file_inode(iocb->ki_filp), false);
fs/zonefs/file.c
631
static ssize_t zonefs_file_read_iter(struct kiocb *iocb, struct iov_iter *to)
fs/zonefs/file.c
633
struct inode *inode = file_inode(iocb->ki_filp);
fs/zonefs/file.c
644
if (iocb->ki_pos >= z->z_capacity)
fs/zonefs/file.c
647
if (iocb->ki_flags & IOCB_NOWAIT) {
fs/zonefs/file.c
657
if (iocb->ki_pos >= isize) {
fs/zonefs/file.c
662
iov_iter_truncate(to, isize - iocb->ki_pos);
fs/zonefs/file.c
665
if (iocb->ki_flags & IOCB_DIRECT) {
fs/zonefs/file.c
668
if ((iocb->ki_pos | count) & (sb->s_blocksize - 1)) {
fs/zonefs/file.c
672
file_accessed(iocb->ki_filp);
fs/zonefs/file.c
673
ret = iomap_dio_rw(iocb, to, &zonefs_read_iomap_ops,
fs/zonefs/file.c
676
ret = generic_file_read_iter(iocb, to);
include/linux/backing-file.h
18
void (*end_write)(struct kiocb *iocb, ssize_t);
include/linux/backing-file.h
28
struct kiocb *iocb, int flags,
include/linux/backing-file.h
31
struct kiocb *iocb, int flags,
include/linux/backing-file.h
33
ssize_t backing_file_splice_read(struct file *in, struct kiocb *iocb,
include/linux/backing-file.h
38
struct file *out, struct kiocb *iocb,
include/linux/comedi/comedi_8254.h
95
comedi_8254_iocb_fn *iocb;
include/linux/compat.h
575
u32 __user *iocb);
include/linux/dax.h
268
ssize_t dax_iomap_rw(struct kiocb *iocb, struct iov_iter *iter,
include/linux/fs.h
2276
int kiocb_modified(struct kiocb *iocb);
include/linux/fs.h
2652
static inline bool iocb_is_dsync(const struct kiocb *iocb)
include/linux/fs.h
2654
return (iocb->ki_flags & IOCB_DSYNC) ||
include/linux/fs.h
2655
IS_SYNC(iocb->ki_filp->f_mapping->host);
include/linux/fs.h
2663
static inline ssize_t generic_write_sync(struct kiocb *iocb, ssize_t count)
include/linux/fs.h
2665
if (iocb_is_dsync(iocb)) {
include/linux/fs.h
2666
int ret = vfs_fsync_range(iocb->ki_filp,
include/linux/fs.h
2667
iocb->ki_pos - count, iocb->ki_pos - 1,
include/linux/fs.h
2668
(iocb->ki_flags & IOCB_SYNC) ? 0 : 1);
include/linux/fs.h
2671
} else if (iocb->ki_flags & IOCB_DONTCACHE) {
include/linux/fs.h
2672
filemap_dontcache_kick_writeback(iocb->ki_filp->f_mapping);
include/linux/fs.h
2763
static inline void kiocb_start_write(struct kiocb *iocb)
include/linux/fs.h
2765
struct inode *inode = file_inode(iocb->ki_filp);
include/linux/fs.h
2781
static inline void kiocb_end_write(struct kiocb *iocb)
include/linux/fs.h
2783
struct inode *inode = file_inode(iocb->ki_filp);
include/linux/fs.h
3060
int generic_write_checks_count(struct kiocb *iocb, loff_t *count);
include/linux/fs.h
3064
ssize_t filemap_read(struct kiocb *iocb, struct iov_iter *to,
include/linux/fs.h
3071
ssize_t direct_write_fallback(struct kiocb *iocb, struct iov_iter *iter,
include/linux/fs.h
3078
ssize_t vfs_iocb_iter_read(struct file *file, struct kiocb *iocb,
include/linux/fs.h
3080
ssize_t vfs_iocb_iter_write(struct file *file, struct kiocb *iocb,
include/linux/fs.h
3124
ssize_t __blockdev_direct_IO(struct kiocb *iocb, struct inode *inode,
include/linux/fs.h
3130
static inline ssize_t blockdev_direct_IO(struct kiocb *iocb,
include/linux/fs.h
3135
return __blockdev_direct_IO(iocb, inode, inode->i_sb->s_bdev, iter,
include/linux/fs.h
3269
extern ssize_t noop_direct_IO(struct kiocb *iocb, struct iov_iter *iter);
include/linux/fs.h
3271
extern int simple_write_begin(const struct kiocb *iocb,
include/linux/fs.h
3653
int generic_atomic_write_valid(struct kiocb *iocb, struct iov_iter *iter);
include/linux/fs.h
382
void (*ki_complete)(struct kiocb *iocb, long ret);
include/linux/fs.h
441
int (*swap_rw)(struct kiocb *iocb, struct iov_iter *iter);
include/linux/fs.h
89
typedef int (dio_iodone_t)(struct kiocb *iocb, loff_t offset,
include/linux/iomap.h
353
ssize_t iomap_file_buffered_write(struct kiocb *iocb, struct iov_iter *from,
include/linux/iomap.h
547
int (*end_io)(struct kiocb *iocb, ssize_t size, int error,
include/linux/iomap.h
600
ssize_t iomap_dio_rw(struct kiocb *iocb, struct iov_iter *iter,
include/linux/iomap.h
603
struct iomap_dio *__iomap_dio_rw(struct kiocb *iocb, struct iov_iter *iter,
include/linux/netfs.h
231
struct kiocb *iocb; /* AIO completion vector */
include/linux/netfs.h
394
ssize_t netfs_unbuffered_read_iter_locked(struct kiocb *iocb, struct iov_iter *iter);
include/linux/netfs.h
395
ssize_t netfs_unbuffered_read_iter(struct kiocb *iocb, struct iov_iter *iter);
include/linux/netfs.h
396
ssize_t netfs_buffered_read_iter(struct kiocb *iocb, struct iov_iter *iter);
include/linux/netfs.h
397
ssize_t netfs_file_read_iter(struct kiocb *iocb, struct iov_iter *iter);
include/linux/netfs.h
400
ssize_t netfs_perform_write(struct kiocb *iocb, struct iov_iter *iter,
include/linux/netfs.h
402
ssize_t netfs_buffered_write_iter_locked(struct kiocb *iocb, struct iov_iter *from,
include/linux/netfs.h
404
ssize_t netfs_unbuffered_write_iter(struct kiocb *iocb, struct iov_iter *from);
include/linux/netfs.h
405
ssize_t netfs_unbuffered_write_iter_locked(struct kiocb *iocb, struct iov_iter *iter,
include/linux/netfs.h
407
ssize_t netfs_file_write_iter(struct kiocb *iocb, struct iov_iter *from);
include/linux/nfs_fs.h
551
int nfs_swap_rw(struct kiocb *iocb, struct iov_iter *iter);
include/linux/nfs_fs.h
552
ssize_t nfs_file_direct_read(struct kiocb *iocb,
include/linux/nfs_fs.h
554
ssize_t nfs_file_direct_write(struct kiocb *iocb,
include/linux/pagemap.h
33
int kiocb_invalidate_pages(struct kiocb *iocb, size_t count);
include/linux/pagemap.h
34
void kiocb_invalidate_post_direct_write(struct kiocb *iocb, size_t count);
include/linux/pagemap.h
61
int kiocb_write_and_wait(struct kiocb *iocb, size_t count);
include/linux/pagemap.h
777
static inline struct folio *write_begin_get_folio(const struct kiocb *iocb,
include/linux/pagemap.h
784
if (iocb && iocb->ki_flags & IOCB_DONTCACHE)
include/linux/seq_file.h
110
ssize_t seq_read_iter(struct kiocb *iocb, struct iov_iter *iter);
include/linux/syscalls.h
16
struct iocb;
include/linux/syscalls.h
313
struct iocb __user * __user *);
include/linux/syscalls.h
314
asmlinkage long sys_io_cancel(aio_context_t ctx_id, struct iocb __user *iocb,
include/trace/events/f2fs.h
1077
TP_PROTO(struct inode *inode, struct kiocb *iocb, long len, int rw),
include/trace/events/f2fs.h
1079
TP_ARGS(inode, iocb, len, rw),
include/trace/events/f2fs.h
1094
__entry->ki_pos = iocb->ki_pos;
include/trace/events/f2fs.h
1095
__entry->ki_flags = iocb->ki_flags;
include/trace/events/f2fs.h
1096
__entry->ki_ioprio = iocb->ki_ioprio;
include/trace/events/netfs.h
517
TP_PROTO(const struct kiocb *iocb, const struct iov_iter *from),
include/trace/events/netfs.h
519
TP_ARGS(iocb, from),
include/trace/events/netfs.h
529
__entry->start = iocb->ki_pos;
include/trace/events/netfs.h
531
__entry->ino = iocb->ki_filp->f_inode->i_ino;
include/trace/events/netfs.h
532
__entry->flags = iocb->ki_flags;
io_uring/mock_file.c
105
struct kiocb *iocb = mio->iocb;
io_uring/mock_file.c
107
WRITE_ONCE(iocb->private, NULL);
io_uring/mock_file.c
108
iocb->ki_complete(iocb, mio->res);
io_uring/mock_file.c
113
static ssize_t io_mock_delay_rw(struct kiocb *iocb, size_t len)
io_uring/mock_file.c
115
struct io_mock_file *mf = iocb->ki_filp->private_data;
io_uring/mock_file.c
122
mio->iocb = iocb;
io_uring/mock_file.c
131
static ssize_t io_mock_read_iter(struct kiocb *iocb, struct iov_iter *to)
io_uring/mock_file.c
133
struct io_mock_file *mf = iocb->ki_filp->private_data;
io_uring/mock_file.c
137
if (iocb->ki_pos + len > mf->size)
io_uring/mock_file.c
143
return io_mock_delay_rw(iocb, len);
io_uring/mock_file.c
146
static ssize_t io_mock_write_iter(struct kiocb *iocb, struct iov_iter *from)
io_uring/mock_file.c
148
struct io_mock_file *mf = iocb->ki_filp->private_data;
io_uring/mock_file.c
151
if (iocb->ki_pos + len > mf->size)
io_uring/mock_file.c
158
return io_mock_delay_rw(iocb, len);
io_uring/mock_file.c
17
struct kiocb *iocb;
kernel/printk/printk.c
739
static ssize_t devkmsg_write(struct kiocb *iocb, struct iov_iter *from)
kernel/printk/printk.c
744
struct file *file = iocb->ki_filp;
mm/filemap.c
2553
static int filemap_update_page(struct kiocb *iocb,
mm/filemap.c
2559
if (iocb->ki_flags & IOCB_NOWAIT) {
mm/filemap.c
2568
if (iocb->ki_flags & (IOCB_NOWAIT | IOCB_NOIO))
mm/filemap.c
2570
if (!(iocb->ki_flags & IOCB_WAITQ)) {
mm/filemap.c
2579
error = __folio_lock_async(folio, iocb->ki_waitq);
mm/filemap.c
2589
if (filemap_range_uptodate(mapping, iocb->ki_pos, count, folio,
mm/filemap.c
2594
if (iocb->ki_flags & (IOCB_NOIO | IOCB_NOWAIT | IOCB_WAITQ))
mm/filemap.c
2597
error = filemap_read_folio(iocb->ki_filp, mapping->a_ops->read_folio,
mm/filemap.c
2609
static int filemap_create_folio(struct kiocb *iocb, struct folio_batch *fbatch)
mm/filemap.c
2611
struct address_space *mapping = iocb->ki_filp->f_mapping;
mm/filemap.c
2617
if (iocb->ki_flags & (IOCB_NOWAIT | IOCB_WAITQ))
mm/filemap.c
2623
if (iocb->ki_flags & IOCB_DONTCACHE)
mm/filemap.c
2640
index = (iocb->ki_pos >> (PAGE_SHIFT + min_order)) << min_order;
mm/filemap.c
2648
error = filemap_read_folio(iocb->ki_filp, mapping->a_ops->read_folio,
mm/filemap.c
2662
static int filemap_readahead(struct kiocb *iocb, struct file *file,
mm/filemap.c
2668
if (iocb->ki_flags & IOCB_NOIO)
mm/filemap.c
2670
if (iocb->ki_flags & IOCB_DONTCACHE)
mm/filemap.c
2676
static int filemap_get_pages(struct kiocb *iocb, size_t count,
mm/filemap.c
2679
struct file *filp = iocb->ki_filp;
mm/filemap.c
2681
pgoff_t index = iocb->ki_pos >> PAGE_SHIFT;
mm/filemap.c
2688
last_index = round_up(iocb->ki_pos + count,
mm/filemap.c
2698
if (iocb->ki_flags & IOCB_NOIO)
mm/filemap.c
2700
if (iocb->ki_flags & IOCB_NOWAIT)
mm/filemap.c
2702
if (iocb->ki_flags & IOCB_DONTCACHE)
mm/filemap.c
2705
if (iocb->ki_flags & IOCB_NOWAIT)
mm/filemap.c
2710
err = filemap_create_folio(iocb, fbatch);
mm/filemap.c
2718
err = filemap_readahead(iocb, filp, mapping, folio, last_index);
mm/filemap.c
2727
err = filemap_update_page(iocb, mapping, count, folio,
mm/filemap.c
2777
ssize_t filemap_read(struct kiocb *iocb, struct iov_iter *iter,
mm/filemap.c
2780
struct file *filp = iocb->ki_filp;
mm/filemap.c
2790
if (unlikely(iocb->ki_pos < 0))
mm/filemap.c
2792
if (unlikely(iocb->ki_pos >= inode->i_sb->s_maxbytes))
mm/filemap.c
2797
iov_iter_truncate(iter, inode->i_sb->s_maxbytes - iocb->ki_pos);
mm/filemap.c
2808
if ((iocb->ki_flags & IOCB_WAITQ) && already_read)
mm/filemap.c
2809
iocb->ki_flags |= IOCB_NOWAIT;
mm/filemap.c
2811
if (unlikely(iocb->ki_pos >= i_size_read(inode)))
mm/filemap.c
2814
error = filemap_get_pages(iocb, iter->count, &fbatch, false);
mm/filemap.c
2827
if (unlikely(iocb->ki_pos >= isize))
mm/filemap.c
2829
end_offset = min_t(loff_t, isize, iocb->ki_pos + iter->count);
mm/filemap.c
2841
if (!pos_same_folio(iocb->ki_pos, last_pos - 1,
mm/filemap.c
2848
size_t offset = iocb->ki_pos & (fsize - 1);
mm/filemap.c
2849
size_t bytes = min_t(loff_t, end_offset - iocb->ki_pos,
mm/filemap.c
2868
iocb->ki_pos += copied;
mm/filemap.c
2869
last_pos = iocb->ki_pos;
mm/filemap.c
2884
} while (iov_iter_count(iter) && iocb->ki_pos < isize && !error);
mm/filemap.c
2892
int kiocb_write_and_wait(struct kiocb *iocb, size_t count)
mm/filemap.c
2894
struct address_space *mapping = iocb->ki_filp->f_mapping;
mm/filemap.c
2895
loff_t pos = iocb->ki_pos;
mm/filemap.c
2898
if (iocb->ki_flags & IOCB_NOWAIT) {
mm/filemap.c
2933
int kiocb_invalidate_pages(struct kiocb *iocb, size_t count)
mm/filemap.c
2935
struct address_space *mapping = iocb->ki_filp->f_mapping;
mm/filemap.c
2937
return filemap_invalidate_pages(mapping, iocb->ki_pos,
mm/filemap.c
2938
iocb->ki_pos + count - 1,
mm/filemap.c
2939
iocb->ki_flags & IOCB_NOWAIT);
mm/filemap.c
2965
generic_file_read_iter(struct kiocb *iocb, struct iov_iter *iter)
mm/filemap.c
2973
if (iocb->ki_flags & IOCB_DIRECT) {
mm/filemap.c
2974
struct file *file = iocb->ki_filp;
mm/filemap.c
2978
retval = kiocb_write_and_wait(iocb, count);
mm/filemap.c
2983
retval = mapping->a_ops->direct_IO(iocb, iter);
mm/filemap.c
2985
iocb->ki_pos += retval;
mm/filemap.c
3002
if (iocb->ki_pos >= i_size_read(inode))
mm/filemap.c
3006
return filemap_read(iocb, iter, retval);
mm/filemap.c
3067
struct kiocb iocb;
mm/filemap.c
3076
init_sync_kiocb(&iocb, in);
mm/filemap.c
3077
iocb.ki_pos = *ppos;
mm/filemap.c
3092
iocb.ki_pos = *ppos;
mm/filemap.c
3093
error = filemap_get_pages(&iocb, len, &fbatch, true);
mm/filemap.c
4263
void kiocb_invalidate_post_direct_write(struct kiocb *iocb, size_t count)
mm/filemap.c
4265
struct address_space *mapping = iocb->ki_filp->f_mapping;
mm/filemap.c
4269
iocb->ki_pos >> PAGE_SHIFT,
mm/filemap.c
4270
(iocb->ki_pos + count - 1) >> PAGE_SHIFT))
mm/filemap.c
4271
dio_warn_stale_pagecache(iocb->ki_filp);
mm/filemap.c
4275
generic_file_direct_write(struct kiocb *iocb, struct iov_iter *from)
mm/filemap.c
4277
struct address_space *mapping = iocb->ki_filp->f_mapping;
mm/filemap.c
4285
written = kiocb_invalidate_pages(iocb, write_len);
mm/filemap.c
4292
written = mapping->a_ops->direct_IO(iocb, from);
mm/filemap.c
4313
loff_t pos = iocb->ki_pos;
mm/filemap.c
4315
kiocb_invalidate_post_direct_write(iocb, written);
mm/filemap.c
4322
iocb->ki_pos = pos;
mm/filemap.c
4330
ssize_t generic_perform_write(struct kiocb *iocb, struct iov_iter *i)
mm/filemap.c
4332
struct file *file = iocb->ki_filp;
mm/filemap.c
4333
loff_t pos = iocb->ki_pos;
mm/filemap.c
4358
status = a_ops->write_begin(iocb, mapping, pos, bytes,
mm/filemap.c
4379
status = a_ops->write_end(iocb, mapping, pos, bytes, copied,
mm/filemap.c
4419
iocb->ki_pos += written;
mm/filemap.c
4445
ssize_t __generic_file_write_iter(struct kiocb *iocb, struct iov_iter *from)
mm/filemap.c
4447
struct file *file = iocb->ki_filp;
mm/filemap.c
4460
if (iocb->ki_flags & IOCB_DIRECT) {
mm/filemap.c
4461
ret = generic_file_direct_write(iocb, from);
mm/filemap.c
4471
return direct_write_fallback(iocb, from, ret,
mm/filemap.c
4472
generic_perform_write(iocb, from));
mm/filemap.c
4475
return generic_perform_write(iocb, from);
mm/filemap.c
4492
ssize_t generic_file_write_iter(struct kiocb *iocb, struct iov_iter *from)
mm/filemap.c
4494
struct file *file = iocb->ki_filp;
mm/filemap.c
4499
ret = generic_write_checks(iocb, from);
mm/filemap.c
4501
ret = __generic_file_write_iter(iocb, from);
mm/filemap.c
4505
ret = generic_write_sync(iocb, ret);
mm/page_io.c
343
struct kiocb iocb;
mm/page_io.c
363
static void sio_write_complete(struct kiocb *iocb, long ret)
mm/page_io.c
365
struct swap_iocb *sio = container_of(iocb, struct swap_iocb, iocb);
mm/page_io.c
404
if (sio->iocb.ki_filp != swap_file ||
mm/page_io.c
405
sio->iocb.ki_pos + sio->len != pos) {
mm/page_io.c
412
init_sync_kiocb(&sio->iocb, swap_file);
mm/page_io.c
413
sio->iocb.ki_complete = sio_write_complete;
mm/page_io.c
414
sio->iocb.ki_pos = pos;
mm/page_io.c
492
struct address_space *mapping = sio->iocb.ki_filp->f_mapping;
mm/page_io.c
496
ret = mapping->a_ops->swap_rw(&sio->iocb, &from);
mm/page_io.c
498
sio_write_complete(&sio->iocb, ret);
mm/page_io.c
501
static void sio_read_complete(struct kiocb *iocb, long ret)
mm/page_io.c
503
struct swap_iocb *sio = container_of(iocb, struct swap_iocb, iocb);
mm/page_io.c
599
if (sio->iocb.ki_filp != sis->swap_file ||
mm/page_io.c
600
sio->iocb.ki_pos + sio->len != pos) {
mm/page_io.c
607
init_sync_kiocb(&sio->iocb, sis->swap_file);
mm/page_io.c
608
sio->iocb.ki_pos = pos;
mm/page_io.c
609
sio->iocb.ki_complete = sio_read_complete;
mm/page_io.c
714
struct address_space *mapping = sio->iocb.ki_filp->f_mapping;
mm/page_io.c
718
ret = mapping->a_ops->swap_rw(&sio->iocb, &from);
mm/page_io.c
720
sio_read_complete(&sio->iocb, ret);
mm/shmem.c
3226
shmem_write_begin(const struct kiocb *iocb, struct address_space *mapping,
mm/shmem.c
3264
shmem_write_end(const struct kiocb *iocb, struct address_space *mapping,
mm/shmem.c
3288
static ssize_t shmem_file_read_iter(struct kiocb *iocb, struct iov_iter *to)
mm/shmem.c
3290
struct file *file = iocb->ki_filp;
mm/shmem.c
3306
if (unlikely(iocb->ki_pos >= i_size))
mm/shmem.c
3309
index = iocb->ki_pos >> PAGE_SHIFT;
mm/shmem.c
3336
if (unlikely(iocb->ki_pos >= i_size)) {
mm/shmem.c
3341
end_offset = min_t(loff_t, i_size, iocb->ki_pos + to->count);
mm/shmem.c
3346
offset = iocb->ki_pos & (fsize - 1);
mm/shmem.c
3347
nr = min_t(loff_t, end_offset - iocb->ki_pos, fsize - offset);
mm/shmem.c
3393
iocb->ki_pos += ret;
mm/shmem.c
3408
static ssize_t shmem_file_write_iter(struct kiocb *iocb, struct iov_iter *from)
mm/shmem.c
3410
struct file *file = iocb->ki_filp;
mm/shmem.c
3415
ret = generic_write_checks(iocb, from);
mm/shmem.c
3424
ret = generic_perform_write(iocb, from);
mm/userfaultfd.c
3471
static ssize_t userfaultfd_read_iter(struct kiocb *iocb, struct iov_iter *to)
mm/userfaultfd.c
3473
struct file *file = iocb->ki_filp;
mm/userfaultfd.c
3483
no_wait = file->f_flags & O_NONBLOCK || iocb->ki_flags & IOCB_NOWAIT;
net/qrtr/tun.c
59
static ssize_t qrtr_tun_read_iter(struct kiocb *iocb, struct iov_iter *to)
net/qrtr/tun.c
61
struct file *filp = iocb->ki_filp;
net/qrtr/tun.c
85
static ssize_t qrtr_tun_write_iter(struct kiocb *iocb, struct iov_iter *from)
net/qrtr/tun.c
87
struct file *filp = iocb->ki_filp;
net/socket.c
1201
static ssize_t sock_read_iter(struct kiocb *iocb, struct iov_iter *to)
net/socket.c
1203
struct file *file = iocb->ki_filp;
net/socket.c
1208
if (file->f_flags & O_NONBLOCK || (iocb->ki_flags & IOCB_NOWAIT))
net/socket.c
121
static ssize_t sock_read_iter(struct kiocb *iocb, struct iov_iter *to);
net/socket.c
1211
if (iocb->ki_pos != 0)
net/socket.c
122
static ssize_t sock_write_iter(struct kiocb *iocb, struct iov_iter *from);
net/socket.c
1222
static ssize_t sock_write_iter(struct kiocb *iocb, struct iov_iter *from)
net/socket.c
1224
struct file *file = iocb->ki_filp;
net/socket.c
1229
if (iocb->ki_pos != 0)
net/socket.c
1232
if (file->f_flags & O_NONBLOCK || (iocb->ki_flags & IOCB_NOWAIT))
net/socket.c
1238
if (iocb->ki_flags & IOCB_NOSIGNAL)
sound/core/pcm_native.c
3622
static ssize_t snd_pcm_readv(struct kiocb *iocb, struct iov_iter *to)
sound/core/pcm_native.c
3632
pcm_file = iocb->ki_filp->private_data;
sound/core/pcm_native.c
3661
static ssize_t snd_pcm_writev(struct kiocb *iocb, struct iov_iter *from)
sound/core/pcm_native.c
3671
pcm_file = iocb->ki_filp->private_data;
tools/usb/ffs-aio-example/multibuff/device_app/aio_multibuff.c
144
struct iocb **iocb;
tools/usb/ffs-aio-example/multibuff/device_app/aio_multibuff.c
212
iobuf->iocb = malloc(n*sizeof(*iobuf->iocb));
tools/usb/ffs-aio-example/multibuff/device_app/aio_multibuff.c
218
iobuf->iocb[i] = malloc(sizeof(**iobuf->iocb));
tools/usb/ffs-aio-example/multibuff/device_app/aio_multibuff.c
228
free(iobuf->iocb[i]);
tools/usb/ffs-aio-example/multibuff/device_app/aio_multibuff.c
231
free(iobuf->iocb);
tools/usb/ffs-aio-example/multibuff/device_app/aio_multibuff.c
332
io_prep_pwrite(iobuf[i].iocb[j], ep1,
tools/usb/ffs-aio-example/multibuff/device_app/aio_multibuff.c
336
iobuf[i].iocb[j]->u.c.flags |= IOCB_FLAG_RESFD;
tools/usb/ffs-aio-example/multibuff/device_app/aio_multibuff.c
337
iobuf[i].iocb[j]->u.c.resfd = evfd;
tools/usb/ffs-aio-example/multibuff/device_app/aio_multibuff.c
340
ret = io_submit(ctx, iobuf[i].cnt, iobuf[i].iocb);
tools/usb/ffs-aio-example/simple/device_app/aio_simple.c
236
struct iocb *iocb_in, *iocb_out;