• Home
  • Raw
  • Download

Lines Matching refs:bio

70 	struct bio *bio;		/* bio under assembly */  member
137 struct bio *bio_list; /* singly linked via bi_private */
345 static blk_status_t dio_bio_complete(struct dio *dio, struct bio *bio);
350 static void dio_bio_end_aio(struct bio *bio) in dio_bio_end_aio() argument
352 struct dio *dio = bio->bi_private; in dio_bio_end_aio()
358 dio_bio_complete(dio, bio); in dio_bio_end_aio()
396 static void dio_bio_end_io(struct bio *bio) in dio_bio_end_io() argument
398 struct dio *dio = bio->bi_private; in dio_bio_end_io()
402 bio->bi_private = dio->bio_list; in dio_bio_end_io()
403 dio->bio_list = bio; in dio_bio_end_io()
417 void dio_end_io(struct bio *bio) in dio_end_io() argument
419 struct dio *dio = bio->bi_private; in dio_end_io()
422 dio_bio_end_aio(bio); in dio_end_io()
424 dio_bio_end_io(bio); in dio_end_io()
433 struct bio *bio; in dio_bio_alloc() local
440 bio = bio_alloc(GFP_KERNEL, nr_vecs); in dio_bio_alloc()
442 fscrypt_set_bio_crypt_ctx(bio, inode, in dio_bio_alloc()
445 bio_set_dev(bio, bdev); in dio_bio_alloc()
446 bio->bi_iter.bi_sector = first_sector; in dio_bio_alloc()
447 bio_set_op_attrs(bio, dio->op, dio->op_flags); in dio_bio_alloc()
449 bio->bi_end_io = dio_bio_end_aio; in dio_bio_alloc()
451 bio->bi_end_io = dio_bio_end_io; in dio_bio_alloc()
453 bio->bi_write_hint = dio->iocb->ki_hint; in dio_bio_alloc()
455 sdio->bio = bio; in dio_bio_alloc()
468 struct bio *bio = sdio->bio; in dio_bio_submit() local
471 bio->bi_private = dio; in dio_bio_submit()
478 bio_set_pages_dirty(bio); in dio_bio_submit()
480 dio->bio_disk = bio->bi_disk; in dio_bio_submit()
483 sdio->submit_io(bio, dio->inode, sdio->logical_offset_in_bio); in dio_bio_submit()
486 dio->bio_cookie = submit_bio(bio); in dio_bio_submit()
488 sdio->bio = NULL; in dio_bio_submit()
508 static struct bio *dio_await_one(struct dio *dio) in dio_await_one()
511 struct bio *bio = NULL; in dio_await_one() local
533 bio = dio->bio_list; in dio_await_one()
534 dio->bio_list = bio->bi_private; in dio_await_one()
537 return bio; in dio_await_one()
543 static blk_status_t dio_bio_complete(struct dio *dio, struct bio *bio) in dio_bio_complete() argument
545 blk_status_t err = bio->bi_status; in dio_bio_complete()
549 if (err == BLK_STS_AGAIN && (bio->bi_opf & REQ_NOWAIT)) in dio_bio_complete()
556 bio_check_pages_dirty(bio); /* transfers ownership */ in dio_bio_complete()
558 bio_release_pages(bio, should_dirty); in dio_bio_complete()
559 bio_put(bio); in dio_bio_complete()
573 struct bio *bio; in dio_await_completion() local
575 bio = dio_await_one(dio); in dio_await_completion()
576 if (bio) in dio_await_completion()
577 dio_bio_complete(dio, bio); in dio_await_completion()
578 } while (bio); in dio_await_completion()
595 struct bio *bio; in dio_bio_reap() local
599 bio = dio->bio_list; in dio_bio_reap()
600 dio->bio_list = bio->bi_private; in dio_bio_reap()
602 ret2 = blk_status_to_errno(dio_bio_complete(dio, bio)); in dio_bio_reap()
758 ret = bio_add_page(sdio->bio, sdio->cur_page, in dio_bio_add_page()
791 if (sdio->bio) { in dio_send_cur_page()
794 sdio->bio->bi_iter.bi_size; in dio_send_cur_page()
815 if (sdio->bio == NULL) { in dio_send_cur_page()
899 if (sdio->bio) in submit_page_section()
1357 if (sdio.bio) in do_blockdev_direct_IO()