]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
imsm: FIX: Remove longer map request
authorAdam Kwolek <adam.kwolek@intel.com>
Wed, 7 Dec 2011 12:57:43 +0000 (13:57 +0100)
committerNeilBrown <neilb@suse.de>
Thu, 8 Dec 2011 03:08:20 +0000 (14:08 +1100)
We shouldn't use longer map. mdadm should know what map is accessed
at the moment.

Signed-off-by: Adam Kwolek <adam.kwolek@intel.com>
Signed-off-by: NeilBrown <neilb@suse.de>
super-intel.c

index 21aa516b58d7617ea28a242e304c79f7bf5aa1c0..9b3d6bead456d018101db66fa44169efb799b643 100644 (file)
@@ -667,12 +667,9 @@ struct imsm_map *get_imsm_map(struct imsm_dev *dev, int second_map)
 {
        /* A device can have 2 maps if it is in the middle of a migration.
         * If second_map is:
-        *    MAP_0 or
-        *    0   - we return the first map
-        *    MAP_1 or
-        *    1   - we return the second map if it exists, else NULL
+        *    MAP_0 or 0   - we return the first map
+        *    MAP_1 or 1   - we return the second map if it exists, else NULL
         *   -1   - we return the second map if it exists, else the first
-        *   -2   - we return longer map /excluding uninitialized state/
         */
        struct imsm_map *map = &dev->vol.map[0];
        struct imsm_map *map2 = NULL;
@@ -692,12 +689,6 @@ struct imsm_map *get_imsm_map(struct imsm_dev *dev, int second_map)
                if (map2)
                        map = map2;
                break;
-       case -2:
-               if (map2
-                   && map2->map_state != IMSM_T_STATE_UNINITIALIZED
-                   && map2->num_members > map->num_members)
-                       map = map2;
-               break;
        default:
                map = NULL;
        }
@@ -6421,7 +6412,7 @@ static void imsm_set_disk(struct active_array *a, int n, int state)
 
        dprintf("imsm: set_disk %d:%x\n", n, state);
 
-       ord = get_imsm_ord_tbl_ent(dev, n, -2);
+       ord = get_imsm_ord_tbl_ent(dev, n, 0);
        disk = get_imsm_disk(super, ord_to_idx(ord));
 
        /* check for new failures */