Searched refs:ioend (Results 1 – 12 of 12) sorted by relevance
| /linux/fs/iomap/ |
| H A D | ioend.c | 20 struct iomap_ioend *ioend = iomap_ioend_from_bio(bio); in iomap_init_ioend() local 22 atomic_set(&ioend->io_remaining, 1); in iomap_init_ioend() 23 ioend->io_error = 0; in iomap_init_ioend() 24 ioend->io_parent = NULL; in iomap_init_ioend() 25 INIT_LIST_HEAD(&ioend->io_list); in iomap_init_ioend() 26 ioend->io_flags = ioend_flags; in iomap_init_ioend() 27 ioend->io_inode = inode; in iomap_init_ioend() 28 ioend->io_offset = file_offset; in iomap_init_ioend() 29 ioend->io_size = bio->bi_iter.bi_size; in iomap_init_ioend() 30 ioend->io_sector = bio->bi_iter.bi_sector; in iomap_init_ioend() [all …]
|
| H A D | internal.h | 20 u32 iomap_finish_ioend_buffered_read(struct iomap_ioend *ioend); 21 u32 iomap_finish_ioend_direct(struct iomap_ioend *ioend);
|
| H A D | bio.c | 76 u32 iomap_finish_ioend_buffered_read(struct iomap_ioend *ioend) in iomap_finish_ioend_buffered_read() argument 78 return __iomap_read_end_io(&ioend->io_bio, ioend->io_error); in iomap_finish_ioend_buffered_read()
|
| H A D | direct-io.c | 281 u32 iomap_finish_ioend_direct(struct iomap_ioend *ioend) in iomap_finish_ioend_direct() argument 283 struct iomap_dio *dio = ioend->io_bio.bi_private; in iomap_finish_ioend_direct() 284 u32 vec_count = ioend->io_bio.bi_vcnt; in iomap_finish_ioend_direct() 286 if (ioend->io_error) in iomap_finish_ioend_direct() 287 iomap_dio_set_error(dio, ioend->io_error); in iomap_finish_ioend_direct() 288 __iomap_dio_bio_end_io(&ioend->io_bio, true); in iomap_finish_ioend_direct()
|
| H A D | Makefile | 15 ioend.o \
|
| /linux/fs/xfs/ |
| H A D | xfs_aops.c | 42 static inline bool xfs_ioend_is_append(struct iomap_ioend *ioend) in xfs_ioend_is_append() argument 44 return ioend->io_offset + ioend->io_size > in xfs_ioend_is_append() 45 XFS_I(ioend->io_inode)->i_disk_size; in xfs_ioend_is_append() 85 struct iomap_ioend *ioend) in xfs_ioend_put_open_zones() argument 92 list_for_each_entry(tmp, &ioend->io_list, io_list) in xfs_ioend_put_open_zones() 99 if (ioend->io_private) in xfs_ioend_put_open_zones() 100 xfs_open_zone_put(ioend->io_private); in xfs_ioend_put_open_zones() 108 struct iomap_ioend *ioend) in xfs_end_ioend_write() argument 110 struct xfs_inode *ip = XFS_I(ioend->io_inode); in xfs_end_ioend_write() 113 xfs_off_t offset = ioend->io_offset; in xfs_end_ioend_write() [all …]
|
| H A D | xfs_zone_alloc.c | 774 struct iomap_ioend *ioend) in xfs_mark_rtg_boundary() argument 776 struct xfs_mount *mp = XFS_I(ioend->io_inode)->i_mount; in xfs_mark_rtg_boundary() 777 sector_t sector = ioend->io_bio.bi_iter.bi_sector; in xfs_mark_rtg_boundary() 780 ioend->io_flags |= IOMAP_IOEND_BOUNDARY; in xfs_mark_rtg_boundary() 836 struct iomap_ioend *ioend, in xfs_submit_zoned_bio() argument 840 ioend->io_bio.bi_iter.bi_sector = ioend->io_sector; in xfs_submit_zoned_bio() 841 ioend->io_private = oz; in xfs_submit_zoned_bio() 845 ioend->io_bio.bi_opf &= ~REQ_OP_WRITE; in xfs_submit_zoned_bio() 846 ioend->io_bio.bi_opf |= REQ_OP_ZONE_APPEND; in xfs_submit_zoned_bio() 848 xfs_mark_rtg_boundary(ioend); in xfs_submit_zoned_bio() [all …]
|
| H A D | xfs_zone_alloc.h | 32 void xfs_zone_alloc_and_submit(struct iomap_ioend *ioend, 43 void xfs_mark_rtg_boundary(struct iomap_ioend *ioend);
|
| H A D | xfs_file.c | 712 struct iomap_ioend *ioend; in xfs_dio_zoned_submit_io() local 726 ioend = iomap_init_ioend(iter->inode, bio, file_offset, in xfs_dio_zoned_submit_io() 728 xfs_zone_alloc_and_submit(ioend, &ac->open_zone); in xfs_dio_zoned_submit_io()
|
| /linux/include/linux/ |
| H A D | iomap.h | 480 struct iomap_ioend *iomap_split_ioend(struct iomap_ioend *ioend, 482 void iomap_finish_ioends(struct iomap_ioend *ioend, int error); 483 void iomap_ioend_try_merge(struct iomap_ioend *ioend,
|
| /linux/Documentation/filesystems/iomap/ |
| H A D | operations.rst | 373 deferring the ioend completion to a workqueue to run metadata update 384 bit on the folios attached to the ``ioend``. 409 * ``iomap_ioend_try_merge``: Given an ioend that is not in any list and 411 the head of the list into the given ioend. 417 * ``iomap_finish_ioends``: Finish an ioend that possibly has other 617 * ``IOMAP_DIO_UNWRITTEN``: The mapping was unwritten, so the ioend 621 copy on write operation, so the ioend should switch mappings.
|
| H A D | design.rst | 205 For a write or writeback operation, the ioend should update the
|