summaryrefslogtreecommitdiff
path: root/drivers/md/multipath.c
diff options
context:
space:
mode:
authorAlex Shi <alex.shi@linaro.org>2016-02-29 10:18:54 +0800
committerAlex Shi <alex.shi@linaro.org>2016-02-29 10:18:54 +0800
commit582ee3a96f6a108f589bdc4ce8cc8176c8d763e5 (patch)
treeffb7c064fe0b7202ebc770cd3c69f5b802893215 /drivers/md/multipath.c
parent02bbd06e489a9f56910973535152d3ec47f3fdcc (diff)
parent12a08707dec7ff067688710aee0d4698f6da98a6 (diff)
Merge branch 'linux-linaro-lsk-v4.4' into linux-linaro-lsk-v4.4-android
Diffstat (limited to 'drivers/md/multipath.c')
-rw-r--r--drivers/md/multipath.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/md/multipath.c b/drivers/md/multipath.c
index 7331a80d89f1..0a72ab6e6c20 100644
--- a/drivers/md/multipath.c
+++ b/drivers/md/multipath.c
@@ -257,6 +257,9 @@ static int multipath_add_disk(struct mddev *mddev, struct md_rdev *rdev)
disk_stack_limits(mddev->gendisk, rdev->bdev,
rdev->data_offset << 9);
+ err = md_integrity_add_rdev(rdev, mddev);
+ if (err)
+ break;
spin_lock_irq(&conf->device_lock);
mddev->degraded--;
rdev->raid_disk = path;
@@ -264,9 +267,6 @@ static int multipath_add_disk(struct mddev *mddev, struct md_rdev *rdev)
spin_unlock_irq(&conf->device_lock);
rcu_assign_pointer(p->rdev, rdev);
err = 0;
- mddev_suspend(mddev);
- md_integrity_add_rdev(rdev, mddev);
- mddev_resume(mddev);
break;
}