From 8161e603db26733a294ec9c289d4835b72fa310a Mon Sep 17 00:00:00 2001 From: NeilBrown Date: Mon, 14 Dec 2009 12:49:49 +1100 Subject: [PATCH] --- yaml --- r: 176079 b: refs/heads/master c: efa593390e70b0e3c39f6b2dca8876b6b1461e41 h: refs/heads/master i: 176077: beefd085a4878770051bbf0aa75adc6a4bf4eb90 176075: 16026a5e86f2923a0f058b664ea54739f8b94842 176071: 97ec0e9f0a834638cfc1fb304280b616e3b4e862 176063: 08cf4db39f13e3b4621286a32a1dd01ad930ca91 v: v3 --- [refs] | 2 +- trunk/drivers/md/md.c | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index b9a71d7672e7..f900c36bf950 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: c07b70ad32ed0a5ec9735cafb1aa10b3a2298b7d +refs/heads/master: efa593390e70b0e3c39f6b2dca8876b6b1461e41 diff --git a/trunk/drivers/md/md.c b/trunk/drivers/md/md.c index a08aa582925b..d79a40649799 100644 --- a/trunk/drivers/md/md.c +++ b/trunk/drivers/md/md.c @@ -6381,6 +6381,7 @@ void md_do_sync(mddev_t *mddev) desc, mdname(mddev)); mddev->curr_resync = j; } + mddev->curr_resync_completed = mddev->curr_resync; while (j < max_sectors) { sector_t sectors; @@ -6532,7 +6533,8 @@ void md_do_sync(mddev_t *mddev) } else if (test_bit(MD_RECOVERY_REQUESTED, &mddev->recovery)) mddev->resync_min = mddev->curr_resync_completed; mddev->curr_resync = 0; - mddev->curr_resync_completed = 0; + if (!test_bit(MD_RECOVERY_INTR, &mddev->recovery)) + mddev->curr_resync_completed = 0; sysfs_notify(&mddev->kobj, NULL, "sync_completed"); wake_up(&resync_wait); set_bit(MD_RECOVERY_DONE, &mddev->recovery);