]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
imsm: fix: stopped resync does not continue after auto-assemblation
authorLukasz Dorau <lukasz.dorau@intel.com>
Sun, 9 Oct 2011 22:16:40 +0000 (09:16 +1100)
committerNeilBrown <neilb@suse.de>
Sun, 9 Oct 2011 22:16:40 +0000 (09:16 +1100)
Resync stopped with "mdadm -Ss" command does not continue
after issuing "mdadm -As" command.

Signed-off-by: Lukasz Dorau <lukasz.dorau@intel.com>
Signed-off-by: NeilBrown <neilb@suse.de>
mdadm.conf.5
super-intel.c

index 9f31c734a1e287197e70a619fa8bc7f6482ebaec..400b10c361bd4e731985f435d91dc9aabc261bc2 100644 (file)
@@ -439,7 +439,7 @@ A device may belong to several domains. The domain of an array is a union
 of domains of all devices in that array.  A spare can be automatically
 moved from one array to another if the set of the destination array's
 .I domains
-contains all the
+ppcontains all the
 .I domains
 of the new disk or if both arrays have the same
 .IR spare-group .
@@ -463,6 +463,7 @@ any arbitrary string
 .B path=
 file glob matching anything from
 .B /dev/disk/by-path
+.TP
 .B type=
 either 
 .B disk
@@ -471,6 +472,8 @@ or
 .TP
 .B action=
 include, re-add, spare, spare-same-slot, or force-spare
+.B auto=
+yes, no, or homehost.
 
 .P
 The
index 587da383d1832eae08f7501e9c3bf029e8ad0db1..af06660bd6e906daf1f7edf8bc369760fd897f73 100644 (file)
@@ -2295,7 +2295,8 @@ 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) {
+       if (prev_map && map->map_state == prev_map->map_state &&
+           (migr_type(dev) == MIGR_GEN_MIGR)) {
                info->reshape_active = 1;
                info->new_level = get_imsm_raid_level(map);
                info->new_layout = imsm_level_to_layout(info->new_level);