]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
imsm: block creation of devices with identical names
authorDan Williams <dan.j.williams@intel.com>
Mon, 2 Feb 2009 22:01:13 +0000 (15:01 -0700)
committerDan Williams <dan.j.williams@intel.com>
Mon, 2 Feb 2009 22:01:13 +0000 (15:01 -0700)
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
super-intel.c

index caf9a996b3426b8f6a5b3951e0e47f335832a11b..f169515c035571104297685f3cc67712d9b8c6e0 100644 (file)
@@ -2175,6 +2175,17 @@ static int init_super_imsm_volume(struct supertype *st, mdu_array_info_t *info,
         */
        if (super->current_vol == 0)
                mpb->num_disks = 0;
+
+       for (i = 0; i < super->current_vol; i++) {
+               dev = get_imsm_dev(super, i);
+               if (strncmp((char *) dev->volume, name,
+                            MAX_RAID_SERIAL_LEN) == 0) {
+                       fprintf(stderr, Name": '%s' is already defined for this container\n",
+                               name);
+                       return 0;
+               }
+       }
+
        sprintf(st->subarray, "%d", idx);
        dv = malloc(sizeof(*dv));
        if (!dv) {