From 69ab3c6b67b6e255674e1293df7eafcccc065b6f Mon Sep 17 00:00:00 2001 From: Jonathan Brassow Date: Thu, 11 Oct 2012 13:42:19 +1100 Subject: [PATCH] --- yaml --- r: 334244 b: refs/heads/master c: 761becff016b82a6a7a1b2ef224248da5f46bae9 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/md/dm-raid.c | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 773dc98d92b5..ea691fa348b8 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 7386199c471f70526bbcc629f072a5a8effe218f +refs/heads/master: 761becff016b82a6a7a1b2ef224248da5f46bae9 diff --git a/trunk/drivers/md/dm-raid.c b/trunk/drivers/md/dm-raid.c index 89a06a361332..45d94a7e7f6d 100644 --- a/trunk/drivers/md/dm-raid.c +++ b/trunk/drivers/md/dm-raid.c @@ -1017,6 +1017,19 @@ static int analyse_superblocks(struct dm_target *ti, struct raid_set *rs) freshest = NULL; rdev_for_each_safe(rdev, tmp, mddev) { + /* + * Skipping super_load due to DMPF_SYNC will cause + * the array to undergo initialization again as + * though it were new. This is the intended effect + * of the "sync" directive. + * + * When reshaping capability is added, we must ensure + * that the "sync" directive is disallowed during the + * reshape. + */ + if (rs->print_flags & DMPF_SYNC) + continue; + if (!rdev->meta_bdev) continue;