Lines Matching refs:bio
277 static void btrfsic_bio_end_io(struct bio *bp);
1561 struct bio *bio; in btrfsic_read_block() local
1564 bio = bio_alloc(block_ctx->dev->bdev, num_pages - i, in btrfsic_read_block()
1566 bio->bi_iter.bi_sector = dev_bytenr >> 9; in btrfsic_read_block()
1569 ret = bio_add_page(bio, block_ctx->pagev[j], in btrfsic_read_block()
1578 if (submit_bio_wait(bio)) { in btrfsic_read_block()
1581 bio_put(bio); in btrfsic_read_block()
1584 bio_put(bio); in btrfsic_read_block()
1683 struct bio *bio, int *bio_is_patched, in btrfsic_process_written_block() argument
1843 if (NULL != bio) { in btrfsic_process_written_block()
1848 bio->bi_private; in btrfsic_process_written_block()
1850 bio->bi_end_io; in btrfsic_process_written_block()
1852 bio->bi_private = block; in btrfsic_process_written_block()
1853 bio->bi_end_io = btrfsic_bio_end_io; in btrfsic_process_written_block()
1858 bio->bi_private; in btrfsic_process_written_block()
1866 bio->bi_private = block; in btrfsic_process_written_block()
1976 if (NULL != bio) { in btrfsic_process_written_block()
1980 block->orig_bio_private = bio->bi_private; in btrfsic_process_written_block()
1981 block->orig_bio_end_io = bio->bi_end_io; in btrfsic_process_written_block()
1983 bio->bi_private = block; in btrfsic_process_written_block()
1984 bio->bi_end_io = btrfsic_bio_end_io; in btrfsic_process_written_block()
1989 bio->bi_private; in btrfsic_process_written_block()
1997 bio->bi_private = block; in btrfsic_process_written_block()
2031 static void btrfsic_bio_end_io(struct bio *bp) in btrfsic_bio_end_io()
2635 static void btrfsic_check_write_bio(struct bio *bio, struct btrfsic_dev_state *dev_state) in btrfsic_check_write_bio() argument
2637 unsigned int segs = bio_segments(bio); in btrfsic_check_write_bio()
2638 u64 dev_bytenr = 512 * bio->bi_iter.bi_sector; in btrfsic_check_write_bio()
2649 bio_op(bio), bio->bi_opf, segs, in btrfsic_check_write_bio()
2650 bio->bi_iter.bi_sector, dev_bytenr, bio->bi_bdev); in btrfsic_check_write_bio()
2656 bio_for_each_segment(bvec, bio, iter) { in btrfsic_check_write_bio()
2669 bio, &bio_is_patched, bio->bi_opf); in btrfsic_check_write_bio()
2673 static void btrfsic_check_flush_bio(struct bio *bio, struct btrfsic_dev_state *dev_state) in btrfsic_check_flush_bio() argument
2677 bio_op(bio), bio->bi_opf, bio->bi_bdev); in btrfsic_check_flush_bio()
2687 block->submit_bio_bh_rw = bio->bi_opf; in btrfsic_check_flush_bio()
2688 block->orig_bio_private = bio->bi_private; in btrfsic_check_flush_bio()
2689 block->orig_bio_end_io = bio->bi_end_io; in btrfsic_check_flush_bio()
2691 bio->bi_private = block; in btrfsic_check_flush_bio()
2692 bio->bi_end_io = btrfsic_bio_end_io; in btrfsic_check_flush_bio()
2702 void btrfsic_check_bio(struct bio *bio) in btrfsic_check_bio() argument
2713 dev_state = btrfsic_dev_state_lookup(bio->bi_bdev->bd_dev); in btrfsic_check_bio()
2716 if (bio_op(bio) == REQ_OP_WRITE && bio_has_data(bio)) in btrfsic_check_bio()
2717 btrfsic_check_write_bio(bio, dev_state); in btrfsic_check_bio()
2718 else if (bio->bi_opf & REQ_PREFLUSH) in btrfsic_check_bio()
2719 btrfsic_check_flush_bio(bio, dev_state); in btrfsic_check_bio()