imsm: FIX: Mark failure for rebuild

Allow for marking failures in second map during rebuild and initialization
also (not during migration only)

Signed-off-by: Adam Kwolek <adam.kwolek@intel.com>
Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
Adam Kwolek 2011-12-07 13:58:22 +01:00 committed by NeilBrown
parent 6ce1fbf188
commit 1778899453
1 changed files with 5 additions and 1 deletions

View File

@ -6158,7 +6158,11 @@ static int mark_failure(struct imsm_dev *dev, struct imsm_disk *disk, int idx)
disk->status |= FAILED_DISK;
set_imsm_ord_tbl_ent(map, slot, idx | IMSM_ORD_REBUILD);
if (is_gen_migration(dev)) {
/* mark failures in second map if second map exists and this disk
* in this slot.
* This is valid for migration, initialization and rebuild
*/
if (dev->vol.migr_state) {
struct imsm_map *map2 = get_imsm_map(dev, 1);
if (slot < map2->num_members)
set_imsm_ord_tbl_ent(map2, slot,