summaryrefslogtreecommitdiff
path: root/drivers/md/raid1.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2012-06-20 16:22:32 +0400
committerIngo Molnar <mingo@kernel.org>2012-06-20 16:22:34 +0400
commit6a991acceedce3ca93caef8ba7af2468c9451614 (patch)
tree1997d71fc57bdebd12fc70a73070281614b52f15 /drivers/md/raid1.c
parent70fb74a5420f9caa3e001d65004e4b669124283e (diff)
parent485802a6c524e62b5924849dd727ddbb1497cc71 (diff)
downloadlinux-6a991acceedce3ca93caef8ba7af2468c9451614.tar.xz
Merge commit 'v3.5-rc3' into x86/debug
Merge it in to pick up a fix that we are going to clean up in this branch. Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'drivers/md/raid1.c')
-rw-r--r--drivers/md/raid1.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/md/raid1.c b/drivers/md/raid1.c
index 835de7168cd3..a9c7981ddd24 100644
--- a/drivers/md/raid1.c
+++ b/drivers/md/raid1.c
@@ -2550,6 +2550,7 @@ static struct r1conf *setup_conf(struct mddev *mddev)
err = -EINVAL;
spin_lock_init(&conf->device_lock);
rdev_for_each(rdev, mddev) {
+ struct request_queue *q;
int disk_idx = rdev->raid_disk;
if (disk_idx >= mddev->raid_disks
|| disk_idx < 0)
@@ -2562,6 +2563,9 @@ static struct r1conf *setup_conf(struct mddev *mddev)
if (disk->rdev)
goto abort;
disk->rdev = rdev;
+ q = bdev_get_queue(rdev->bdev);
+ if (q->merge_bvec_fn)
+ mddev->merge_check_needed = 1;
disk->head_position = 0;
}