diff --git a/drivers/md/md.c b/drivers/md/md.c
index deccd560c0dea57a6fef0db5da1b26cab58e86cf..20ca80b7dc20611de86d418faf8da69140fd764a 100644
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
@@ -1689,6 +1689,7 @@ static int do_md_run(mddev_t * mddev)
 	mddev->pers = pers[pnum];
 	spin_unlock(&pers_lock);
 
+	mddev->recovery = 0;
 	mddev->resync_max_sectors = mddev->size << 1; /* may be over-ridden by personality */
 
 	/* before we start the array running, initialise the bitmap */