diff options
Diffstat (limited to 'drivers/md/raid1.c')
-rw-r--r-- | drivers/md/raid1.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/md/raid1.c b/drivers/md/raid1.c index 6778b7cb39bd..ac409b7d83f5 100644 --- a/drivers/md/raid1.c +++ b/drivers/md/raid1.c | |||
@@ -1935,6 +1935,9 @@ static int run(mddev_t *mddev) | |||
1935 | if (!conf->r1bio_pool) | 1935 | if (!conf->r1bio_pool) |
1936 | goto out_no_mem; | 1936 | goto out_no_mem; |
1937 | 1937 | ||
1938 | spin_lock_init(&conf->device_lock); | ||
1939 | mddev->queue->queue_lock = &conf->device_lock; | ||
1940 | |||
1938 | rdev_for_each(rdev, tmp, mddev) { | 1941 | rdev_for_each(rdev, tmp, mddev) { |
1939 | disk_idx = rdev->raid_disk; | 1942 | disk_idx = rdev->raid_disk; |
1940 | if (disk_idx >= mddev->raid_disks | 1943 | if (disk_idx >= mddev->raid_disks |
@@ -1958,7 +1961,6 @@ static int run(mddev_t *mddev) | |||
1958 | } | 1961 | } |
1959 | conf->raid_disks = mddev->raid_disks; | 1962 | conf->raid_disks = mddev->raid_disks; |
1960 | conf->mddev = mddev; | 1963 | conf->mddev = mddev; |
1961 | spin_lock_init(&conf->device_lock); | ||
1962 | INIT_LIST_HEAD(&conf->retry_list); | 1964 | INIT_LIST_HEAD(&conf->retry_list); |
1963 | 1965 | ||
1964 | spin_lock_init(&conf->resync_lock); | 1966 | spin_lock_init(&conf->resync_lock); |