summaryrefslogtreecommitdiffstats
path: root/super-intel.c
diff options
context:
space:
mode:
Diffstat (limited to 'super-intel.c')
-rw-r--r--super-intel.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/super-intel.c b/super-intel.c
index caf9a99..f169515 100644
--- a/super-intel.c
+++ b/super-intel.c
@@ -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) {