diff --git a/[refs] b/[refs] index 4c6f40d76993..6e13933ea8bd 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: b8d966efd9a46a9a35beac50cbff6e30565125ef +refs/heads/master: 1ec22eb2b4a2e1a763106bce36b11c02eaa84e61 diff --git a/trunk/drivers/md/md.c b/trunk/drivers/md/md.c index 2166af8a7654..58bee2366ea8 100644 --- a/trunk/drivers/md/md.c +++ b/trunk/drivers/md/md.c @@ -3862,6 +3862,8 @@ static int md_alloc(dev_t dev, char *name) if (mddev2->gendisk && strcmp(mddev2->gendisk->disk_name, name) == 0) { spin_unlock(&all_mddevs_lock); + mutex_unlock(&disks_mutex); + mddev_put(mddev); return -EEXIST; } spin_unlock(&all_mddevs_lock);