diff options
author | Adam Kwolek <adam.kwolek@intel.com> | 2011-12-06 11:28:04 +1100 |
---|---|---|
committer | NeilBrown <neilb@suse.de> | 2011-12-06 11:28:04 +1100 |
commit | 3f510843b1354538270ffa64a137f2bf6b656001 (patch) | |
tree | a84ebe2a6d95700bd186bf46edbe998f69390b79 /super-intel.c | |
parent | bf2f00718640b5c5cad3076344d347d885b523f9 (diff) |
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 <adam.kwolek@intel.com>
Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'super-intel.c')
-rw-r--r-- | super-intel.c | 3 |
1 files changed, 1 insertions, 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); |