Lines Matching refs:bio
64 struct bio *bio; member
70 static void __read_end_io(struct bio *bio) in __read_end_io() argument
76 bio_for_each_segment_all(bv, bio, iter_all) { in __read_end_io()
80 if (bio->bi_status || PageError(page)) { in __read_end_io()
89 if (bio->bi_private) in __read_end_io()
90 mempool_free(bio->bi_private, bio_post_read_ctx_pool); in __read_end_io()
91 bio_put(bio); in __read_end_io()
101 fscrypt_decrypt_bio(ctx->bio); in decrypt_work()
111 fsverity_verify_bio(ctx->bio); in verity_work()
141 __read_end_io(ctx->bio); in bio_post_read_processing()
145 static bool bio_post_read_required(struct bio *bio) in bio_post_read_required() argument
147 return bio->bi_private && !bio->bi_status; in bio_post_read_required()
151 ext4_trace_read_completion(struct bio *bio) in ext4_trace_read_completion() argument
153 struct page *first_page = bio->bi_io_vec[0].bv_page; in ext4_trace_read_completion()
158 bio->bi_iter.bi_size); in ext4_trace_read_completion()
173 static void mpage_end_io(struct bio *bio) in mpage_end_io() argument
176 ext4_trace_read_completion(bio); in mpage_end_io()
178 if (bio_post_read_required(bio)) { in mpage_end_io()
179 struct bio_post_read_ctx *ctx = bio->bi_private; in mpage_end_io()
185 __read_end_io(bio); in mpage_end_io()
195 struct bio *bio, in get_bio_post_read_ctx() argument
211 ctx->bio = bio; in get_bio_post_read_ctx()
213 bio->bi_private = ctx; in get_bio_post_read_ctx()
228 ext4_submit_bio_read(struct bio *bio) in ext4_submit_bio_read() argument
231 struct page *first_page = bio->bi_io_vec[0].bv_page; in ext4_submit_bio_read()
242 bio->bi_iter.bi_size, in ext4_submit_bio_read()
248 submit_bio(bio); in ext4_submit_bio_read()
255 struct bio *bio = NULL; in ext4_mpage_readpages() local
396 if (bio && (last_block_in_bio != blocks[0] - 1 || in ext4_mpage_readpages()
397 !fscrypt_mergeable_bio(bio, inode, next_block))) { in ext4_mpage_readpages()
399 ext4_submit_bio_read(bio); in ext4_mpage_readpages()
400 bio = NULL; in ext4_mpage_readpages()
402 if (bio == NULL) { in ext4_mpage_readpages()
405 bio = bio_alloc(GFP_KERNEL, in ext4_mpage_readpages()
407 if (!bio) in ext4_mpage_readpages()
409 fscrypt_set_bio_crypt_ctx(bio, inode, next_block, in ext4_mpage_readpages()
411 ctx = get_bio_post_read_ctx(inode, bio, page->index); in ext4_mpage_readpages()
413 bio_put(bio); in ext4_mpage_readpages()
414 bio = NULL; in ext4_mpage_readpages()
417 bio_set_dev(bio, bdev); in ext4_mpage_readpages()
418 bio->bi_iter.bi_sector = blocks[0] << (blkbits - 9); in ext4_mpage_readpages()
419 bio->bi_end_io = mpage_end_io; in ext4_mpage_readpages()
420 bio->bi_private = ctx; in ext4_mpage_readpages()
421 bio_set_op_attrs(bio, REQ_OP_READ, in ext4_mpage_readpages()
426 if (bio_add_page(bio, page, length, 0) < length) in ext4_mpage_readpages()
432 ext4_submit_bio_read(bio); in ext4_mpage_readpages()
433 bio = NULL; in ext4_mpage_readpages()
438 if (bio) { in ext4_mpage_readpages()
439 ext4_submit_bio_read(bio); in ext4_mpage_readpages()
440 bio = NULL; in ext4_mpage_readpages()
451 if (bio) in ext4_mpage_readpages()
452 ext4_submit_bio_read(bio); in ext4_mpage_readpages()