Incremental/container: don't create when we should just be opening.

When incr-assembling in a container, if the array already exists,
don't try to create it again, just open it.

Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
NeilBrown 2009-03-10 16:28:22 +11:00
parent add394f39e
commit 3092660000
1 changed files with 10 additions and 7 deletions

View File

@ -733,7 +733,10 @@ int Incremental_container(struct supertype *st, char *devname, int verbose,
mp = map_by_uuid(&map, ra->uuid);
if (!mp) {
if (mp) {
mdfd = open_dev(mp->devnum);
strcpy(chosen_name, mp->path);
} else {
/* Check in mdadm.conf for devices == devname and
* member == ra->text_version after second slash.
@ -772,13 +775,13 @@ int Incremental_container(struct supertype *st, char *devname, int verbose,
array_list->member);
break;
}
}
mdfd = create_mddev(match ? match->devname : NULL,
ra->name,
autof,
trustworthy,
chosen_name);
mdfd = create_mddev(match ? match->devname : NULL,
ra->name,
autof,
trustworthy,
chosen_name);
}
if (mdfd < 0) {
fprintf(stderr, Name ": failed to open %s: %s.\n",