Array state has to be managed during reshape based on consistent flag. To achieve this existing code will be reused. Currently existing code for blocks_per_unit calculation can be removed and existing code can be reused also. Signed-off-by: Adam Kwolek <adam.kwolek@xxxxxxxxx> --- super-intel.c | 15 ++------------- 1 files changed, 2 insertions(+), 13 deletions(-) diff --git a/super-intel.c b/super-intel.c index c5e459f..c0bff98 100644 --- a/super-intel.c +++ b/super-intel.c @@ -5210,19 +5210,7 @@ static int imsm_set_array_state(struct active_array *a, int consistent) */ if (a->curr_action == reshape) { /* still reshaping, maybe update curr_migr_unit */ - long long blocks_per_unit = blocks_per_migr_unit(dev); - long long unit = a->last_checkpoint; - if (blocks_per_unit) { - unit /= blocks_per_unit; - if (unit > - __le32_to_cpu(dev->vol.curr_migr_unit)) { - dev->vol.curr_migr_unit = - __cpu_to_le32(unit); - dev->vol.dirty = 0; - super->updates_pending++; - } - } - return 0; + goto mark_checkpoint; } else { if (a->last_checkpoint == 0 && a->prev_action == reshape) { /* for some reason we aborted the reshape. @@ -5299,6 +5287,7 @@ static int imsm_set_array_state(struct active_array *a, int consistent) super->updates_pending++; } +mark_checkpoint: /* check if we can update curr_migr_unit from resync_start, recovery_start */ blocks_per_unit = blocks_per_migr_unit(dev); if (blocks_per_unit) { -- To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html