imsm: FIX: Use first map only in migration record disk operations

This patch is addition to patch:
    "imsm: FIX: Limit migration record operation by disk slot not by index"
Location of migration record (2 first slots) should be taken on up to date
information. It is in first map.
Change slot verification to use first map 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-12 12:07:53 +01:00 committed by NeilBrown
parent 3136abe585
commit 44bfe6dfe9
1 changed files with 4 additions and 4 deletions

View File

@ -1178,8 +1178,8 @@ void examine_migr_rec_imsm(struct intel_super *super)
printf("\nMigration Record Information:");
/* map under migration */
map = get_imsm_map(dev, MAP_1);
/* first map under migration */
map = get_imsm_map(dev, MAP_0);
if (map)
slot = get_imsm_disk_slot(map, super->disks->index);
if ((map == NULL) || (slot > 1) || (slot < 0)) {
@ -2131,7 +2131,7 @@ static int load_imsm_migr_rec(struct intel_super *super, struct mdinfo *info)
*/
if (dev == NULL)
return 0;
map = get_imsm_map(dev, MAP_1);
map = get_imsm_map(dev, MAP_0);
if (info) {
for (sd = info->devs ; sd ; sd = sd->next) {
@ -2257,7 +2257,7 @@ static int write_imsm_migr_rec(struct supertype *st)
dev = get_imsm_dev(super, super->current_vol < 0 ? 0 :
super->current_vol);
map = get_imsm_map(dev, MAP_X);
map = get_imsm_map(dev, MAP_0);
for (sd = super->disks ; sd ; sd = sd->next) {
int slot;