diff --git a/[refs] b/[refs] index 7cd7b4c09030..373eea58dcad 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 242b363e2207d14125f52a6701cfda7376a2a2fc +refs/heads/master: 11e2ede0228ee0f81ccacd15894908c3bf241f73 diff --git a/trunk/drivers/md/md.c b/trunk/drivers/md/md.c index 75a3f483522d..bec00b201a73 100644 --- a/trunk/drivers/md/md.c +++ b/trunk/drivers/md/md.c @@ -1370,6 +1370,11 @@ static int bind_rdev_to_array(mdk_rdev_t * rdev, mddev_t * mddev) MD_BUG(); return -EINVAL; } + + /* prevent duplicates */ + if (find_rdev(mddev, rdev->bdev->bd_dev)) + return -EEXIST; + /* make sure rdev->size exceeds mddev->size */ if (rdev->size && (mddev->size == 0 || rdev->size < mddev->size)) { if (mddev->pers) {