Lines Matching refs:clone
392 static void clone_free(struct bio *clone)
396 if (clone->bi_vcnt > 0) { /* bio_for_each_folio_all crashes with an empty bio */
397 bio_for_each_folio_all(fi, clone)
401 bio_uninit(clone);
402 kfree(clone);
405 static void clone_endio(struct bio *clone)
407 struct bio *bio = clone->bi_private;
408 bio->bi_status = clone->bi_status;
409 clone_free(clone);
415 struct bio *clone;
425 clone = bio_kmalloc(nr_iovecs, GFP_NOIO | __GFP_NORETRY | __GFP_NOWARN);
426 if (!clone)
429 bio_init(clone, fc->dev->bdev, clone->bi_inline_vecs, nr_iovecs, bio->bi_opf);
431 clone->bi_iter.bi_sector = flakey_map_sector(ti, bio->bi_iter.bi_sector);
432 clone->bi_private = bio;
433 clone->bi_end_io = clone_endio;
452 clone_free(clone);
471 __bio_add_page(clone, pages, size_to_add, 0);
475 return clone;
535 struct bio *clone = clone_bio(ti, fc, bio);
536 if (clone) {
538 corrupt_bio_data(clone, fc);
540 corrupt_bio_random(clone);
541 submit_bio(clone);