Lines Matching refs:bio

31 static void f2fs_read_end_io(struct bio *bio, int err)  in f2fs_read_end_io()  argument
36 bio_for_each_segment_all(bvec, bio, i) { in f2fs_read_end_io()
47 bio_put(bio); in f2fs_read_end_io()
50 static void f2fs_write_end_io(struct bio *bio, int err) in f2fs_write_end_io() argument
52 struct f2fs_sb_info *sbi = bio->bi_private; in f2fs_write_end_io()
56 bio_for_each_segment_all(bvec, bio, i) { in f2fs_write_end_io()
72 bio_put(bio); in f2fs_write_end_io()
78 static struct bio *__bio_alloc(struct f2fs_sb_info *sbi, block_t blk_addr, in __bio_alloc()
81 struct bio *bio; in __bio_alloc() local
84 bio = bio_alloc(GFP_NOIO, npages); in __bio_alloc()
86 bio->bi_bdev = sbi->sb->s_bdev; in __bio_alloc()
87 bio->bi_iter.bi_sector = SECTOR_FROM_BLOCK(blk_addr); in __bio_alloc()
88 bio->bi_end_io = is_read ? f2fs_read_end_io : f2fs_write_end_io; in __bio_alloc()
89 bio->bi_private = sbi; in __bio_alloc()
91 return bio; in __bio_alloc()
98 if (!io->bio) in __submit_merged_bio()
102 trace_f2fs_submit_read_bio(io->sbi->sb, fio, io->bio); in __submit_merged_bio()
104 trace_f2fs_submit_write_bio(io->sbi->sb, fio, io->bio); in __submit_merged_bio()
106 submit_bio(fio->rw, io->bio); in __submit_merged_bio()
107 io->bio = NULL; in __submit_merged_bio()
139 struct bio *bio; in f2fs_submit_page_bio() local
145 bio = __bio_alloc(sbi, fio->blk_addr, 1, is_read_io(fio->rw)); in f2fs_submit_page_bio()
147 if (bio_add_page(bio, page, PAGE_CACHE_SIZE, 0) < PAGE_CACHE_SIZE) { in f2fs_submit_page_bio()
148 bio_put(bio); in f2fs_submit_page_bio()
153 submit_bio(fio->rw, bio); in f2fs_submit_page_bio()
173 if (io->bio && (io->last_block_in_bio != fio->blk_addr - 1 || in f2fs_submit_page_mbio()
177 if (io->bio == NULL) { in f2fs_submit_page_mbio()
180 io->bio = __bio_alloc(sbi, fio->blk_addr, bio_blocks, is_read); in f2fs_submit_page_mbio()
184 if (bio_add_page(io->bio, page, PAGE_CACHE_SIZE, 0) < in f2fs_submit_page_mbio()