From 3f510843b1354538270ffa64a137f2bf6b656001 Mon Sep 17 00:00:00 2001 From: Adam Kwolek Date: Tue, 6 Dec 2011 11:28:04 +1100 Subject: [PATCH] imsm: FIX: Remove single map state limitation in getinfo It can occur that degradation during migration occurs on disks that are not present in both maps /e.g. degradation on just added disk during OLCE/. This can cause that maps will be in different states (one will be in degraded and second in normal state). In such situation getinfo_super_imsm_volume() will not return migration information. Remove single state limitation in both maps to allow migration information retrieving. Signed-off-by: Adam Kwolek Signed-off-by: NeilBrown --- super-intel.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/super-intel.c b/super-intel.c index 5827d139..96104ea2 100644 --- a/super-intel.c +++ b/super-intel.c @@ -2313,8 +2313,7 @@ static void getinfo_super_imsm_volume(struct supertype *st, struct mdinfo *info, info->custom_array_size |= __le32_to_cpu(dev->size_low); info->recovery_blocked = imsm_reshape_blocks_arrays_changes(st->sb); - if (prev_map && map->map_state == prev_map->map_state && - (migr_type(dev) == MIGR_GEN_MIGR)) { + if (is_gen_migration(dev)) { info->reshape_active = 1; info->new_level = get_imsm_raid_level(map); info->new_layout = imsm_level_to_layout(info->new_level); -- 2.39.2