Field info->array.spare_disks is used on begin of reshape_array() to check if there is enough number of spares to process reshape. During container_content_imsm() call spare disks are not counted. This causes that reshape_array() reports that there is not enough spares to execute reshape. Patch adds spares counting for reshape process. Signed-off-by: Adam Kwolek <adam.kwolek@xxxxxxxxx> --- super-intel.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/super-intel.c b/super-intel.c index c3ff365..0c70fda 100644 --- a/super-intel.c +++ b/super-intel.c @@ -4632,9 +4632,13 @@ static struct mdinfo *container_content_imsm(struct supertype *st, char *subarra if (map2) { if (slot < map2->num_members) info_d->disk.state = (1 << MD_DISK_ACTIVE); + else + this->array.spare_disks++; } else { if (slot < map->num_members) info_d->disk.state = (1 << MD_DISK_ACTIVE); + else + this->array.spare_disks++; } if (info_d->recovery_start == MaxSector) this->array.working_disks++; -- 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