Lines Matching refs:raid_bio
5391 static int raid5_read_one_chunk(struct mddev *mddev, struct bio *raid_bio)
5399 if (!in_chunk_boundary(mddev, raid_bio)) {
5406 align_bi = bio_clone_fast(raid_bio, GFP_NOIO, &mddev->bio_set);
5414 align_bi->bi_private = raid_bio;
5419 raid5_compute_sector(conf, raid_bio->bi_iter.bi_sector,
5447 raid_bio->bi_next = (void*)rdev;
5471 raid_bio->bi_iter.bi_sector);
5481 static struct bio *chunk_aligned_read(struct mddev *mddev, struct bio *raid_bio)
5484 sector_t sector = raid_bio->bi_iter.bi_sector;
5488 if (sectors < bio_sectors(raid_bio)) {
5490 split = bio_split(raid_bio, sectors, GFP_NOIO, &conf->bio_split);
5491 bio_chain(split, raid_bio);
5492 submit_bio_noacct(raid_bio);
5493 raid_bio = split;
5496 if (!raid5_read_one_chunk(mddev, raid_bio))
5497 return raid_bio;
6302 static int retry_aligned_read(struct r5conf *conf, struct bio *raid_bio,
6312 * We *know* that this entire raid_bio is in one chunk, so
6321 logical_sector = raid_bio->bi_iter.bi_sector &
6325 last_sector = bio_end_sector(raid_bio);
6340 conf->retry_read_aligned = raid_bio;
6345 if (!add_stripe_bio(sh, raid_bio, dd_idx, 0, 0)) {
6347 conf->retry_read_aligned = raid_bio;
6358 bio_endio(raid_bio);