diff options
Diffstat (limited to 'drivers/md')
-rw-r--r-- | drivers/md/md.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/md/md.c b/drivers/md/md.c index 80bcba9951c3..b9d902652a51 100644 --- a/drivers/md/md.c +++ b/drivers/md/md.c | |||
@@ -3675,7 +3675,9 @@ static int do_md_run(mddev_t * mddev) | |||
3675 | mddev->ro = 2; /* read-only, but switch on first write */ | 3675 | mddev->ro = 2; /* read-only, but switch on first write */ |
3676 | 3676 | ||
3677 | err = mddev->pers->run(mddev); | 3677 | err = mddev->pers->run(mddev); |
3678 | if (!err && mddev->pers->sync_request) { | 3678 | if (err) |
3679 | printk(KERN_ERR "md: pers->run() failed ...\n"); | ||
3680 | else if (mddev->pers->sync_request) { | ||
3679 | err = bitmap_create(mddev); | 3681 | err = bitmap_create(mddev); |
3680 | if (err) { | 3682 | if (err) { |
3681 | printk(KERN_ERR "%s: failed to create bitmap (%d)\n", | 3683 | printk(KERN_ERR "%s: failed to create bitmap (%d)\n", |
@@ -3684,7 +3686,6 @@ static int do_md_run(mddev_t * mddev) | |||
3684 | } | 3686 | } |
3685 | } | 3687 | } |
3686 | if (err) { | 3688 | if (err) { |
3687 | printk(KERN_ERR "md: pers->run() failed ...\n"); | ||
3688 | module_put(mddev->pers->owner); | 3689 | module_put(mddev->pers->owner); |
3689 | mddev->pers = NULL; | 3690 | mddev->pers = NULL; |
3690 | bitmap_destroy(mddev); | 3691 | bitmap_destroy(mddev); |