Lines Matching refs:dio_data
142 struct btrfs_dio_data *dio_data, in btrfs_create_dio_extent() argument
167 ASSERT(!dio_data->ordered); in btrfs_create_dio_extent()
168 dio_data->ordered = ordered; in btrfs_create_dio_extent()
175 struct btrfs_dio_data *dio_data, in btrfs_new_extent_direct() argument
205 em = btrfs_create_dio_extent(inode, dio_data, start, &file_extent, in btrfs_new_extent_direct()
216 struct btrfs_dio_data *dio_data, in btrfs_get_blocks_direct_write() argument
279 em2 = btrfs_create_dio_extent(BTRFS_I(inode), dio_data, start, in btrfs_get_blocks_direct_write()
300 dio_data->nocow_done = true; in btrfs_get_blocks_direct_write()
315 if (!dio_data->data_space_reserved) { in btrfs_get_blocks_direct_write()
330 em = btrfs_new_extent_direct(BTRFS_I(inode), dio_data, start, len); in btrfs_get_blocks_direct_write()
354 if (!dio_data->updated_isize) { in btrfs_get_blocks_direct_write()
355 dio_data->old_isize = old_isize; in btrfs_get_blocks_direct_write()
356 dio_data->updated_isize = true; in btrfs_get_blocks_direct_write()
377 struct btrfs_dio_data *dio_data = iter->private; in btrfs_dio_iomap_begin() local
441 memset(dio_data, 0, sizeof(*dio_data)); in btrfs_dio_iomap_begin()
454 &dio_data->data_reserved, in btrfs_dio_iomap_begin()
457 dio_data->data_space_reserved = true; in btrfs_dio_iomap_begin()
540 ret = btrfs_get_blocks_direct_write(&em, inode, dio_data, in btrfs_dio_iomap_begin()
546 if (dio_data->data_space_reserved) { in btrfs_dio_iomap_begin()
550 if (dio_data->nocow_done) { in btrfs_dio_iomap_begin()
560 dio_data->data_reserved, in btrfs_dio_iomap_begin()
612 if (dio_data->data_space_reserved) { in btrfs_dio_iomap_begin()
614 dio_data->data_reserved, in btrfs_dio_iomap_begin()
616 extent_changeset_free(dio_data->data_reserved); in btrfs_dio_iomap_begin()
626 struct btrfs_dio_data *dio_data = iter->private; in btrfs_dio_iomap_end() local
676 if (dio_data->updated_isize) { in btrfs_dio_iomap_end()
680 new_isize = dio_data->old_isize; in btrfs_dio_iomap_end()
682 new_isize = max(dio_data->old_isize, pos + written); in btrfs_dio_iomap_end()
684 dio_data->updated_isize = false; in btrfs_dio_iomap_end()
694 btrfs_mark_ordered_extent_truncated(dio_data->ordered, 0); in btrfs_dio_iomap_end()
695 btrfs_finish_ordered_extent(dio_data->ordered, in btrfs_dio_iomap_end()
699 btrfs_put_ordered_extent(dio_data->ordered); in btrfs_dio_iomap_end()
700 dio_data->ordered = NULL; in btrfs_dio_iomap_end()
701 extent_changeset_free(dio_data->data_reserved); in btrfs_dio_iomap_end()
775 struct btrfs_dio_data *dio_data = iter->private; in btrfs_dio_submit_io() local
793 ret = btrfs_extract_ordered_extent(bbio, dio_data->ordered); in btrfs_dio_submit_io()
795 btrfs_finish_ordered_extent(dio_data->ordered, in btrfs_dio_submit_io()