]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
imsm: turn off curr_migr_unit updates
authorDan Williams <dan.j.williams@intel.com>
Sun, 12 Apr 2009 07:58:28 +0000 (00:58 -0700)
committerDan Williams <dan.j.williams@intel.com>
Sun, 12 Apr 2009 07:58:28 +0000 (00:58 -0700)
New documentation shows that this field is not equivalent to
md/resync_start.  Disable updates until full support can be developed.

Writing '0' when a migration starts/re-starts remains correct.

Signed-off-by: Dan Williams <dan.j.williams@intel.com>
super-intel.c

index 41e916891d8aba9e7033f2b1468cb0c0555716c0..3befc3d0712d21b576d6849bb74f465ce33e9e52 100644 (file)
@@ -1218,7 +1218,8 @@ static void getinfo_super_imsm_volume(struct supertype *st, struct mdinfo *info)
        if (map->map_state == IMSM_T_STATE_UNINITIALIZED || dev->vol.dirty)
                info->resync_start = 0;
        else if (dev->vol.migr_state)
        if (map->map_state == IMSM_T_STATE_UNINITIALIZED || dev->vol.dirty)
                info->resync_start = 0;
        else if (dev->vol.migr_state)
-               info->resync_start = __le32_to_cpu(dev->vol.curr_migr_unit);
+               /* FIXME add curr_migr_unit to resync_start conversion */
+               info->resync_start = 0;
        else
                info->resync_start = ~0ULL;
 
        else
                info->resync_start = ~0ULL;
 
@@ -3684,13 +3685,7 @@ static int imsm_set_array_state(struct active_array *a, int consistent)
                super->updates_pending++;
        }
 
                super->updates_pending++;
        }
 
-       /* check if we can update the migration checkpoint */
-       if (dev->vol.migr_state &&
-           __le32_to_cpu(dev->vol.curr_migr_unit) != a->resync_start) {
-               dprintf("imsm: checkpoint migration (%llu)\n", a->resync_start);
-               dev->vol.curr_migr_unit = __cpu_to_le32(a->resync_start);
-               super->updates_pending++;
-       }
+        /* FIXME check if we can update curr_migr_unit from resync_start */
 
        /* mark dirty / clean */
        if (dev->vol.dirty != !consistent) {
 
        /* mark dirty / clean */
        if (dev->vol.dirty != !consistent) {