ioend 29 fs/xfs/xfs_aops.c struct xfs_ioend *ioend; ioend 85 fs/xfs/xfs_aops.c struct xfs_ioend *ioend, ioend 88 fs/xfs/xfs_aops.c struct inode *inode = ioend->io_inode; ioend 89 fs/xfs/xfs_aops.c struct bio *bio = &ioend->io_inline_bio; ioend 90 fs/xfs/xfs_aops.c struct bio *last = ioend->io_bio, *next; ioend 94 fs/xfs/xfs_aops.c for (bio = &ioend->io_inline_bio; bio; bio = next) { ioend 122 fs/xfs/xfs_aops.c static inline bool xfs_ioend_is_append(struct xfs_ioend *ioend) ioend 124 fs/xfs/xfs_aops.c return ioend->io_offset + ioend->io_size > ioend 125 fs/xfs/xfs_aops.c XFS_I(ioend->io_inode)->i_d.di_size; ioend 130 fs/xfs/xfs_aops.c struct xfs_ioend *ioend) ioend 132 fs/xfs/xfs_aops.c struct xfs_mount *mp = XFS_I(ioend->io_inode)->i_mount; ioend 140 fs/xfs/xfs_aops.c ioend->io_append_trans = tp; ioend 146 fs/xfs/xfs_aops.c __sb_writers_release(ioend->io_inode->i_sb, SB_FREEZE_FS); ioend 203 fs/xfs/xfs_aops.c struct xfs_ioend *ioend, ioend 206 fs/xfs/xfs_aops.c struct xfs_inode *ip = XFS_I(ioend->io_inode); ioend 207 fs/xfs/xfs_aops.c struct xfs_trans *tp = ioend->io_append_trans; ioend 223 fs/xfs/xfs_aops.c return __xfs_setfilesize(ip, tp, ioend->io_offset, ioend->io_size); ioend 231 fs/xfs/xfs_aops.c struct xfs_ioend *ioend) ioend 234 fs/xfs/xfs_aops.c struct xfs_inode *ip = XFS_I(ioend->io_inode); ioend 235 fs/xfs/xfs_aops.c xfs_off_t offset = ioend->io_offset; ioend 236 fs/xfs/xfs_aops.c size_t size = ioend->io_size; ioend 258 fs/xfs/xfs_aops.c error = blk_status_to_errno(ioend->io_bio->bi_status); ioend 260 fs/xfs/xfs_aops.c if (ioend->io_fork == XFS_COW_FORK) ioend 268 fs/xfs/xfs_aops.c if (ioend->io_fork == XFS_COW_FORK) ioend 270 fs/xfs/xfs_aops.c else if (ioend->io_state == XFS_EXT_UNWRITTEN) ioend 273 fs/xfs/xfs_aops.c ASSERT(!xfs_ioend_is_append(ioend) || ioend->io_append_trans); ioend 276 fs/xfs/xfs_aops.c if (ioend->io_append_trans) ioend 277 fs/xfs/xfs_aops.c error = xfs_setfilesize_ioend(ioend, error); ioend 278 fs/xfs/xfs_aops.c list_replace_init(&ioend->io_list, &ioend_list); ioend 279 fs/xfs/xfs_aops.c xfs_destroy_ioend(ioend, error); ioend 282 fs/xfs/xfs_aops.c ioend = list_first_entry(&ioend_list, struct xfs_ioend, ioend 284 fs/xfs/xfs_aops.c list_del_init(&ioend->io_list); ioend 285 fs/xfs/xfs_aops.c xfs_destroy_ioend(ioend, error); ioend 296 fs/xfs/xfs_aops.c struct xfs_ioend *ioend, ioend 299 fs/xfs/xfs_aops.c if (ioend->io_bio->bi_status != next->io_bio->bi_status) ioend 301 fs/xfs/xfs_aops.c if ((ioend->io_fork == XFS_COW_FORK) ^ (next->io_fork == XFS_COW_FORK)) ioend 303 fs/xfs/xfs_aops.c if ((ioend->io_state == XFS_EXT_UNWRITTEN) ^ ioend 306 fs/xfs/xfs_aops.c if (ioend->io_offset + ioend->io_size != next->io_offset) ioend 319 fs/xfs/xfs_aops.c struct xfs_ioend *ioend, ioend 322 fs/xfs/xfs_aops.c if (!ioend->io_append_trans) { ioend 323 fs/xfs/xfs_aops.c ioend->io_append_trans = next->io_append_trans; ioend 333 fs/xfs/xfs_aops.c struct xfs_ioend *ioend, ioend 341 fs/xfs/xfs_aops.c if (!xfs_ioend_can_merge(ioend, next_ioend)) ioend 343 fs/xfs/xfs_aops.c list_move_tail(&next_ioend->io_list, &ioend->io_list); ioend 344 fs/xfs/xfs_aops.c ioend->io_size += next_ioend->io_size; ioend 346 fs/xfs/xfs_aops.c xfs_ioend_merge_append_transactions(ioend, next_ioend); ioend 375 fs/xfs/xfs_aops.c struct xfs_ioend *ioend; ioend 388 fs/xfs/xfs_aops.c ioend = list_first_entry(&completion_list, struct xfs_ioend, ioend 390 fs/xfs/xfs_aops.c list_del_init(&ioend->io_list); ioend 391 fs/xfs/xfs_aops.c xfs_ioend_try_merge(ioend, &completion_list); ioend 392 fs/xfs/xfs_aops.c xfs_end_ioend(ioend); ioend 400 fs/xfs/xfs_aops.c struct xfs_ioend *ioend = bio->bi_private; ioend 401 fs/xfs/xfs_aops.c struct xfs_inode *ip = XFS_I(ioend->io_inode); ioend 405 fs/xfs/xfs_aops.c if (ioend->io_fork == XFS_COW_FORK || ioend 406 fs/xfs/xfs_aops.c ioend->io_state == XFS_EXT_UNWRITTEN || ioend 407 fs/xfs/xfs_aops.c ioend->io_append_trans != NULL) { ioend 412 fs/xfs/xfs_aops.c list_add_tail(&ioend->io_list, &ip->i_ioend_list); ioend 415 fs/xfs/xfs_aops.c xfs_destroy_ioend(ioend, blk_status_to_errno(bio->bi_status)); ioend 646 fs/xfs/xfs_aops.c struct xfs_ioend *ioend, ioend 659 fs/xfs/xfs_aops.c if (!status && ioend->io_fork == XFS_COW_FORK) { ioend 660 fs/xfs/xfs_aops.c status = xfs_reflink_convert_cow(XFS_I(ioend->io_inode), ioend 661 fs/xfs/xfs_aops.c ioend->io_offset, ioend->io_size); ioend 666 fs/xfs/xfs_aops.c (ioend->io_fork == XFS_COW_FORK || ioend 667 fs/xfs/xfs_aops.c ioend->io_state != XFS_EXT_UNWRITTEN) && ioend 668 fs/xfs/xfs_aops.c xfs_ioend_is_append(ioend) && ioend 669 fs/xfs/xfs_aops.c !ioend->io_append_trans) ioend 670 fs/xfs/xfs_aops.c status = xfs_setfilesize_trans_alloc(ioend); ioend 674 fs/xfs/xfs_aops.c ioend->io_bio->bi_private = ioend; ioend 675 fs/xfs/xfs_aops.c ioend->io_bio->bi_end_io = xfs_end_bio; ioend 684 fs/xfs/xfs_aops.c ioend->io_bio->bi_status = errno_to_blk_status(status); ioend 685 fs/xfs/xfs_aops.c bio_endio(ioend->io_bio); ioend 689 fs/xfs/xfs_aops.c submit_bio(ioend->io_bio); ioend 703 fs/xfs/xfs_aops.c struct xfs_ioend *ioend; ioend 713 fs/xfs/xfs_aops.c ioend = container_of(bio, struct xfs_ioend, io_inline_bio); ioend 714 fs/xfs/xfs_aops.c INIT_LIST_HEAD(&ioend->io_list); ioend 715 fs/xfs/xfs_aops.c ioend->io_fork = fork; ioend 716 fs/xfs/xfs_aops.c ioend->io_state = state; ioend 717 fs/xfs/xfs_aops.c ioend->io_inode = inode; ioend 718 fs/xfs/xfs_aops.c ioend->io_size = 0; ioend 719 fs/xfs/xfs_aops.c ioend->io_offset = offset; ioend 720 fs/xfs/xfs_aops.c ioend->io_append_trans = NULL; ioend 721 fs/xfs/xfs_aops.c ioend->io_bio = bio; ioend 722 fs/xfs/xfs_aops.c return ioend; ioend 775 fs/xfs/xfs_aops.c if (!wpc->ioend || ioend 776 fs/xfs/xfs_aops.c wpc->fork != wpc->ioend->io_fork || ioend 777 fs/xfs/xfs_aops.c wpc->imap.br_state != wpc->ioend->io_state || ioend 778 fs/xfs/xfs_aops.c sector != bio_end_sector(wpc->ioend->io_bio) || ioend 779 fs/xfs/xfs_aops.c offset != wpc->ioend->io_offset + wpc->ioend->io_size) { ioend 780 fs/xfs/xfs_aops.c if (wpc->ioend) ioend 781 fs/xfs/xfs_aops.c list_add(&wpc->ioend->io_list, iolist); ioend 782 fs/xfs/xfs_aops.c wpc->ioend = xfs_alloc_ioend(inode, wpc->fork, ioend 786 fs/xfs/xfs_aops.c merged = __bio_try_merge_page(wpc->ioend->io_bio, page, len, poff, ioend 793 fs/xfs/xfs_aops.c if (bio_full(wpc->ioend->io_bio, len)) ioend 794 fs/xfs/xfs_aops.c wpc->ioend->io_bio = xfs_chain_bio(wpc->ioend->io_bio); ioend 795 fs/xfs/xfs_aops.c bio_add_page(wpc->ioend->io_bio, page, len, poff); ioend 798 fs/xfs/xfs_aops.c wpc->ioend->io_size += len; ioend 876 fs/xfs/xfs_aops.c struct xfs_ioend *ioend, *next; ioend 904 fs/xfs/xfs_aops.c ASSERT(wpc->ioend || list_empty(&submit_list)); ioend 951 fs/xfs/xfs_aops.c list_for_each_entry_safe(ioend, next, &submit_list, io_list) { ioend 954 fs/xfs/xfs_aops.c list_del_init(&ioend->io_list); ioend 955 fs/xfs/xfs_aops.c error2 = xfs_submit_ioend(wbc, ioend, error); ioend 1096 fs/xfs/xfs_aops.c if (wpc.ioend) ioend 1097 fs/xfs/xfs_aops.c ret = xfs_submit_ioend(wbc, wpc.ioend, ret); ioend 1111 fs/xfs/xfs_aops.c if (wpc.ioend) ioend 1112 fs/xfs/xfs_aops.c ret = xfs_submit_ioend(wbc, wpc.ioend, ret);