Lines Matching refs:bio_ctrl
140 struct btrfs_bio_ctrl bio_ctrl; member
191 struct bio *bio = epd->bio_ctrl.bio; in end_write_bio()
196 epd->bio_ctrl.bio = NULL; in end_write_bio()
209 struct bio *bio = epd->bio_ctrl.bio; in flush_write_bio()
220 epd->bio_ctrl.bio = NULL; in flush_write_bio()
3198 static int btrfs_bio_add_page(struct btrfs_bio_ctrl *bio_ctrl, in btrfs_bio_add_page() argument
3204 struct bio *bio = bio_ctrl->bio; in btrfs_bio_add_page()
3213 ASSERT(bio_ctrl->len_to_oe_boundary && bio_ctrl->len_to_stripe_boundary); in btrfs_bio_add_page()
3214 if (bio_ctrl->bio_flags != bio_flags) in btrfs_bio_add_page()
3217 if (bio_ctrl->bio_flags & EXTENT_BIO_COMPRESSED) in btrfs_bio_add_page()
3224 real_size = min(bio_ctrl->len_to_oe_boundary, in btrfs_bio_add_page()
3225 bio_ctrl->len_to_stripe_boundary) - bio_size; in btrfs_bio_add_page()
3243 static int calc_bio_boundaries(struct btrfs_bio_ctrl *bio_ctrl, in calc_bio_boundaries() argument
3250 u64 logical = (bio_ctrl->bio->bi_iter.bi_sector << SECTOR_SHIFT); in calc_bio_boundaries()
3260 if (bio_ctrl->bio_flags & EXTENT_BIO_COMPRESSED) { in calc_bio_boundaries()
3261 bio_ctrl->len_to_oe_boundary = U32_MAX; in calc_bio_boundaries()
3262 bio_ctrl->len_to_stripe_boundary = U32_MAX; in calc_bio_boundaries()
3268 ret = btrfs_get_io_geometry(fs_info, em, btrfs_op(bio_ctrl->bio), in calc_bio_boundaries()
3275 bio_ctrl->len_to_stripe_boundary = U32_MAX; in calc_bio_boundaries()
3277 bio_ctrl->len_to_stripe_boundary = (u32)geom.len; in calc_bio_boundaries()
3280 bio_op(bio_ctrl->bio) != REQ_OP_ZONE_APPEND) { in calc_bio_boundaries()
3281 bio_ctrl->len_to_oe_boundary = U32_MAX; in calc_bio_boundaries()
3288 bio_ctrl->len_to_oe_boundary = U32_MAX; in calc_bio_boundaries()
3292 bio_ctrl->len_to_oe_boundary = min_t(u32, U32_MAX, in calc_bio_boundaries()
3299 struct btrfs_bio_ctrl *bio_ctrl, in alloc_new_bio() argument
3318 bio_ctrl->bio = bio; in alloc_new_bio()
3319 bio_ctrl->bio_flags = bio_flags; in alloc_new_bio()
3324 ret = calc_bio_boundaries(bio_ctrl, inode, file_offset); in alloc_new_bio()
3348 bio_ctrl->bio = NULL; in alloc_new_bio()
3370 struct btrfs_bio_ctrl *bio_ctrl, in submit_extent_page() argument
3382 ASSERT(bio_ctrl); in submit_extent_page()
3386 if (force_bio_submit && bio_ctrl->bio) { in submit_extent_page()
3387 ret = submit_one_bio(bio_ctrl->bio, mirror_num, bio_ctrl->bio_flags); in submit_extent_page()
3388 bio_ctrl->bio = NULL; in submit_extent_page()
3398 if (!bio_ctrl->bio) { in submit_extent_page()
3399 ret = alloc_new_bio(inode, bio_ctrl, wbc, opf, in submit_extent_page()
3411 added = btrfs_bio_add_page(bio_ctrl, page, disk_bytenr, in submit_extent_page()
3415 added = btrfs_bio_add_page(bio_ctrl, page, in submit_extent_page()
3430 ASSERT(bio_ctrl->bio->bi_iter.bi_size); in submit_extent_page()
3431 ret = submit_one_bio(bio_ctrl->bio, mirror_num, in submit_extent_page()
3432 bio_ctrl->bio_flags); in submit_extent_page()
3433 bio_ctrl->bio = NULL; in submit_extent_page()
3550 struct btrfs_bio_ctrl *bio_ctrl, in btrfs_do_readpage() argument
3725 bio_ctrl, page, disk_bytenr, iosize, in btrfs_do_readpage()
3747 struct btrfs_bio_ctrl *bio_ctrl, in contiguous_readpages() argument
3756 btrfs_do_readpage(pages[index], em_cached, bio_ctrl, in contiguous_readpages()
4019 &epd->bio_ctrl, page, in __extent_writepage_io()
4514 &epd->bio_ctrl, page, eb->start, eb->len, in write_one_subpage_eb()
4554 &epd->bio_ctrl, p, disk_bytenr, in write_one_eb()
4773 .bio_ctrl = { 0 }, in btree_write_cache_pages()
5055 .bio_ctrl = { 0 }, in extent_write_full_page()
5082 .bio_ctrl = { 0 }, in extent_write_locked_range()
5125 .bio_ctrl = { 0 }, in extent_writepages()
5142 struct btrfs_bio_ctrl bio_ctrl = { 0 }; in extent_readahead() local
5153 &em_cached, &bio_ctrl, &prev_em_start); in extent_readahead()
5159 if (bio_ctrl.bio) { in extent_readahead()
5160 if (submit_one_bio(bio_ctrl.bio, 0, bio_ctrl.bio_flags)) in extent_readahead()
6456 struct btrfs_bio_ctrl bio_ctrl = { 0 }; in read_extent_buffer_subpage() local
6488 ret = submit_extent_page(REQ_OP_READ | REQ_META, NULL, &bio_ctrl, in read_extent_buffer_subpage()
6501 if (bio_ctrl.bio) { in read_extent_buffer_subpage()
6504 tmp = submit_one_bio(bio_ctrl.bio, mirror_num, 0); in read_extent_buffer_subpage()
6505 bio_ctrl.bio = NULL; in read_extent_buffer_subpage()
6528 struct btrfs_bio_ctrl bio_ctrl = { 0 }; in read_extent_buffer_pages() local
6592 &bio_ctrl, page, page_offset(page), in read_extent_buffer_pages()
6611 if (bio_ctrl.bio) { in read_extent_buffer_pages()
6612 err = submit_one_bio(bio_ctrl.bio, mirror_num, bio_ctrl.bio_flags); in read_extent_buffer_pages()
6613 bio_ctrl.bio = NULL; in read_extent_buffer_pages()