Lines Matching refs:raid_bio
5502 static int raid5_read_one_chunk(struct mddev *mddev, struct bio *raid_bio) in raid5_read_one_chunk() argument
5512 if (!in_chunk_boundary(mddev, raid_bio)) { in raid5_read_one_chunk()
5517 sector = raid5_compute_sector(conf, raid_bio->bi_iter.bi_sector, 0, in raid5_read_one_chunk()
5519 end_sector = bio_end_sector(raid_bio); in raid5_read_one_chunk()
5540 if (is_badblock(rdev, sector, bio_sectors(raid_bio), &first_bad, in raid5_read_one_chunk()
5546 align_bio = bio_alloc_clone(rdev->bdev, raid_bio, GFP_NOIO, in raid5_read_one_chunk()
5549 raid_bio->bi_next = (void *)rdev; in raid5_read_one_chunk()
5550 if (blk_queue_io_stat(raid_bio->bi_bdev->bd_disk->queue)) in raid5_read_one_chunk()
5551 md_io_acct->start_time = bio_start_io_acct(raid_bio); in raid5_read_one_chunk()
5552 md_io_acct->orig_bio = raid_bio; in raid5_read_one_chunk()
5582 raid_bio->bi_iter.bi_sector); in raid5_read_one_chunk()
5591 static struct bio *chunk_aligned_read(struct mddev *mddev, struct bio *raid_bio) in chunk_aligned_read() argument
5594 sector_t sector = raid_bio->bi_iter.bi_sector; in chunk_aligned_read()
5598 if (sectors < bio_sectors(raid_bio)) { in chunk_aligned_read()
5600 split = bio_split(raid_bio, sectors, GFP_NOIO, &conf->bio_split); in chunk_aligned_read()
5601 bio_chain(split, raid_bio); in chunk_aligned_read()
5602 submit_bio_noacct(raid_bio); in chunk_aligned_read()
5603 raid_bio = split; in chunk_aligned_read()
5606 if (!raid5_read_one_chunk(mddev, raid_bio)) in chunk_aligned_read()
5607 return raid_bio; in chunk_aligned_read()
6567 static int retry_aligned_read(struct r5conf *conf, struct bio *raid_bio, in retry_aligned_read() argument
6586 logical_sector = raid_bio->bi_iter.bi_sector & in retry_aligned_read()
6590 last_sector = bio_end_sector(raid_bio); in retry_aligned_read()
6605 conf->retry_read_aligned = raid_bio; in retry_aligned_read()
6610 if (!add_stripe_bio(sh, raid_bio, dd_idx, 0, 0)) { in retry_aligned_read()
6612 conf->retry_read_aligned = raid_bio; in retry_aligned_read()
6623 bio_endio(raid_bio); in retry_aligned_read()