Lines Matching refs:bio
944 static void drbd_bm_endio(struct bio *bio) in drbd_bm_endio() argument
946 struct drbd_bm_aio_ctx *ctx = bio->bi_private; in drbd_bm_endio()
949 unsigned int idx = bm_page_to_idx(bio->bi_io_vec[0].bv_page); in drbd_bm_endio()
955 if (bio->bi_error) { in drbd_bm_endio()
958 ctx->error = bio->bi_error; in drbd_bm_endio()
964 bio->bi_error, idx); in drbd_bm_endio()
973 mempool_free(bio->bi_io_vec[0].bv_page, drbd_md_io_page_pool); in drbd_bm_endio()
975 bio_put(bio); in drbd_bm_endio()
986 struct bio *bio = bio_alloc_drbd(GFP_NOIO); in bm_page_io_async() local
1015 bio->bi_bdev = device->ldev->md_bdev; in bm_page_io_async()
1016 bio->bi_iter.bi_sector = on_disk_sector; in bm_page_io_async()
1019 bio_add_page(bio, page, len, 0); in bm_page_io_async()
1020 bio->bi_private = ctx; in bm_page_io_async()
1021 bio->bi_end_io = drbd_bm_endio; in bm_page_io_async()
1024 bio->bi_rw |= rw; in bm_page_io_async()
1025 bio_io_error(bio); in bm_page_io_async()
1027 submit_bio(rw, bio); in bm_page_io_async()