Lines Matching defs:bio
179 static void nvmet_bio_done(struct bio *bio)
181 struct nvmet_req *req = bio->bi_private;
183 nvmet_req_complete(req, blk_to_nvme_status(req, bio->bi_status));
184 nvmet_req_bio_put(req, bio);
188 static int nvmet_bdev_alloc_bip(struct nvmet_req *req, struct bio *bio,
202 bip = bio_integrity_alloc(bio, GFP_NOIO,
210 bip_set_seed(bip, bio->bi_iter.bi_sector >>
213 resid = bio_integrity_bytes(bi, bio_sectors(bio));
216 rc = bio_integrity_add_page(bio, miter->page, len,
233 static int nvmet_bdev_alloc_bip(struct nvmet_req *req, struct bio *bio,
243 struct bio *bio;
277 bio = &req->b.inline_bio;
278 bio_init(bio, req->ns->bdev, req->inline_bvec,
281 bio = bio_alloc(req->ns->bdev, bio_max_segs(sg_cnt), opf,
284 bio->bi_iter.bi_sector = sector;
285 bio->bi_private = req;
286 bio->bi_end_io = nvmet_bio_done;
294 while (bio_add_page(bio, sg_page(sg), sg->length, sg->offset)
296 struct bio *prev = bio;
299 rc = nvmet_bdev_alloc_bip(req, bio,
302 bio_io_error(bio);
307 bio = bio_alloc(req->ns->bdev, bio_max_segs(sg_cnt),
309 bio->bi_iter.bi_sector = sector;
311 bio_chain(bio, prev);
320 rc = nvmet_bdev_alloc_bip(req, bio, &prot_miter);
322 bio_io_error(bio);
327 submit_bio(bio);
333 struct bio *bio = &req->b.inline_bio;
343 bio_init(bio, req->ns->bdev, req->inline_bvec,
345 bio->bi_private = req;
346 bio->bi_end_io = nvmet_bio_done;
348 submit_bio(bio);
362 struct nvme_dsm_range *range, struct bio **bio)
370 GFP_KERNEL, bio);
381 struct bio *bio = NULL;
391 status = nvmet_bdev_discard_range(req, &range, &bio);
396 if (bio) {
397 bio->bi_private = req;
398 bio->bi_end_io = nvmet_bio_done;
400 bio_io_error(bio);
402 submit_bio(bio);
429 struct bio *bio = NULL;
442 GFP_KERNEL, &bio, 0);
443 if (bio) {
444 bio->bi_private = req;
445 bio->bi_end_io = nvmet_bio_done;
446 submit_bio(bio);