diff options
Diffstat (limited to 'drivers/md/raid1.c')
| -rw-r--r-- | drivers/md/raid1.c | 4 | 
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;  	} | 
