md/raid5: fix bug in reshape code when chunk_size decreases.
[firefly-linux-kernel-4.4.55.git] / drivers / md / raid5.c
index 59f2ec0759b46458202252236e527f4c5e86dc17..bb37fb1b2d82dd484e749ec3b18a9dcf9e1b8f55 100644 (file)
@@ -3916,7 +3916,7 @@ static sector_t reshape_request(mddev_t *mddev, sector_t sector_nr, int *skipped
                raid5_compute_sector(conf, stripe_addr*(new_data_disks),
                                     1, &dd_idx, NULL);
        last_sector =
-               raid5_compute_sector(conf, ((stripe_addr+conf->chunk_size/512)
+               raid5_compute_sector(conf, ((stripe_addr+reshape_sectors)
                                            *(new_data_disks) - 1),
                                     1, &dd_idx, NULL);
        if (last_sector >= mddev->dev_sectors)