Lines Matching refs:bio

75 	struct bio *orig_bio;
97 static struct bio *compressed_bio_alloc(struct block_device *bdev, in compressed_bio_alloc()
152 static void end_compressed_bio_read(struct bio *bio) in end_compressed_bio_read() argument
154 struct compressed_bio *cb = bio->bi_private; in end_compressed_bio_read()
160 if (bio->bi_error) in end_compressed_bio_read()
171 (u64)bio->bi_iter.bi_sector << 9); in end_compressed_bio_read()
217 bio_put(bio); in end_compressed_bio_read()
266 static void end_compressed_bio_write(struct bio *bio) in end_compressed_bio_write() argument
269 struct compressed_bio *cb = bio->bi_private; in end_compressed_bio_write()
274 if (bio->bi_error) in end_compressed_bio_write()
293 bio->bi_error ? 0 : 1); in end_compressed_bio_write()
314 bio_put(bio); in end_compressed_bio_write()
332 struct bio *bio = NULL; in btrfs_submit_compressed_write() local
361 bio = compressed_bio_alloc(bdev, first_byte, GFP_NOFS); in btrfs_submit_compressed_write()
362 if (!bio) { in btrfs_submit_compressed_write()
366 bio->bi_private = cb; in btrfs_submit_compressed_write()
367 bio->bi_end_io = end_compressed_bio_write; in btrfs_submit_compressed_write()
375 if (bio->bi_iter.bi_size) in btrfs_submit_compressed_write()
378 bio, 0); in btrfs_submit_compressed_write()
383 if (ret || bio_add_page(bio, page, PAGE_CACHE_SIZE, 0) < in btrfs_submit_compressed_write()
385 bio_get(bio); in btrfs_submit_compressed_write()
394 ret = btrfs_bio_wq_end_io(root->fs_info, bio, in btrfs_submit_compressed_write()
399 ret = btrfs_csum_one_bio(root, inode, bio, in btrfs_submit_compressed_write()
404 ret = btrfs_map_bio(root, WRITE, bio, 0, 1); in btrfs_submit_compressed_write()
407 bio_put(bio); in btrfs_submit_compressed_write()
409 bio = compressed_bio_alloc(bdev, first_byte, GFP_NOFS); in btrfs_submit_compressed_write()
410 BUG_ON(!bio); in btrfs_submit_compressed_write()
411 bio->bi_private = cb; in btrfs_submit_compressed_write()
412 bio->bi_end_io = end_compressed_bio_write; in btrfs_submit_compressed_write()
413 bio_add_page(bio, page, PAGE_CACHE_SIZE, 0); in btrfs_submit_compressed_write()
424 bio_get(bio); in btrfs_submit_compressed_write()
426 ret = btrfs_bio_wq_end_io(root->fs_info, bio, BTRFS_WQ_ENDIO_DATA); in btrfs_submit_compressed_write()
430 ret = btrfs_csum_one_bio(root, inode, bio, start, 1); in btrfs_submit_compressed_write()
434 ret = btrfs_map_bio(root, WRITE, bio, 0, 1); in btrfs_submit_compressed_write()
437 bio_put(bio); in btrfs_submit_compressed_write()
563 int btrfs_submit_compressed_read(struct inode *inode, struct bio *bio, in btrfs_submit_compressed_read() argument
570 unsigned long uncompressed_len = bio->bi_vcnt * PAGE_CACHE_SIZE; in btrfs_submit_compressed_read()
576 struct bio *comp_bio; in btrfs_submit_compressed_read()
577 u64 cur_disk_byte = (u64)bio->bi_iter.bi_sector << 9; in btrfs_submit_compressed_read()
591 page_offset(bio->bi_io_vec->bv_page), in btrfs_submit_compressed_read()
618 cb->orig_bio = bio; in btrfs_submit_compressed_read()
647 uncompressed_len = bio->bi_vcnt * PAGE_CACHE_SIZE; in btrfs_submit_compressed_read()
697 bio->bi_error = ret; in btrfs_submit_compressed_read()
726 bio->bi_error = ret; in btrfs_submit_compressed_read()