summaryrefslogtreecommitdiff
path: root/Create.c
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2010-11-22 20:24:50 +1100
committerNeilBrown <neilb@suse.de>2010-11-22 20:24:50 +1100
commitd1d599ea0d25b047bc0541e62431e635e1e29f18 (patch)
treeec3b0df291b2a0d903a620e4472c4a0bae219433 /Create.c
parent9b63e64836d207c4fb74f7647d54dd90162a8392 (diff)
Create: user container_dev rather than subarray for some tests.
It makes more sense to test for container_dev than for subarray for several places in Create where it then uses container_dev. This allows us to subsequently remove subarray. Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'Create.c')
-rw-r--r--Create.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/Create.c b/Create.c
index bbf2f2b0..337040c2 100644
--- a/Create.c
+++ b/Create.c
@@ -672,7 +672,7 @@ int Create(struct supertype *st, char *mddev,
sysfs_init(&info, mdfd, 0);
- if (st->ss->external && st->subarray[0]) {
+ if (st->ss->external && st->container_dev != NoMdDev) {
/* member */
/* When creating a member, we need to be careful
@@ -775,7 +775,8 @@ int Create(struct supertype *st, char *mddev,
if (have_container)
fd = -1;
else {
- if (st->ss->external && st->subarray[0])
+ if (st->ss->external &&
+ st->container_dev != NoMdDev)
fd = open(dv->devname, O_RDWR);
else
fd = open(dv->devname, O_RDWR|O_EXCL);
@@ -906,7 +907,7 @@ int Create(struct supertype *st, char *mddev,
}
if (verbose >= 0)
fprintf(stderr, Name ": array %s started.\n", mddev);
- if (st->ss->external && st->subarray[0]) {
+ if (st->ss->external && st->container_dev != NoMdDev) {
if (need_mdmon)
start_mdmon(st->container_dev);