|
@@ -2808,6 +2808,11 @@ static int make_request(request_queue_t *q, struct bio * bi)
|
|
|
disk_stat_inc(mddev->gendisk, ios[rw]);
|
|
|
disk_stat_add(mddev->gendisk, sectors[rw], bio_sectors(bi));
|
|
|
|
|
|
+ if (bio_data_dir(bi) == READ &&
|
|
|
+ mddev->reshape_position == MaxSector &&
|
|
|
+ chunk_aligned_read(q,bi))
|
|
|
+ return 0;
|
|
|
+
|
|
|
logical_sector = bi->bi_sector & ~((sector_t)STRIPE_SECTORS-1);
|
|
|
last_sector = bi->bi_sector + (bi->bi_size>>9);
|
|
|
bi->bi_next = NULL;
|