From: Adam Kwolek Date: Wed, 8 Jun 2011 07:11:49 +0000 (+1000) Subject: imsm: Disable checkpoint updating by mdmon for general migration X-Git-Tag: mdadm-3.2.2~52 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5b83bacff6e27bd967858925a24044285c655251;p=thirdparty%2Fmdadm.git imsm: Disable checkpoint updating by mdmon for general migration imsm contains 2 check-pointing mechanism. One (per array) is used for initialization and rebuild and second (per container) is used for general migration (reshape). First is controlled by mdmon, second by mdadm. To avoid conflicts disable mdmon checkpoints updating for general migration. Signed-off-by: Adam Kwolek Signed-off-by: NeilBrown --- diff --git a/super-intel.c b/super-intel.c index 2d79fd82..7654a117 100644 --- a/super-intel.c +++ b/super-intel.c @@ -5851,6 +5851,12 @@ static int imsm_set_array_state(struct active_array *a, int consistent) } mark_checkpoint: + /* skip checkpointing for general migration, + * it is controlled in mdadm + */ + if (is_gen_migration(dev)) + goto skip_mark_checkpoint; + /* check if we can update curr_migr_unit from resync_start, recovery_start */ blocks_per_unit = blocks_per_migr_unit(super, dev); if (blocks_per_unit) { @@ -5872,6 +5878,7 @@ mark_checkpoint: } } +skip_mark_checkpoint: /* mark dirty / clean */ if (dev->vol.dirty != !consistent) { dprintf("imsm: mark '%s'\n", consistent ? "clean" : "dirty");