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
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);
}
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);
st = malloc(sizeof(*st));
memset(st, 0, sizeof(*st));
+ st->container_dev = NoMdDev;
st->ss = &super_ddf;
st->max_devs = 512;
st->minor_version = 0;
if (!st)
return NULL;
memset(st, 0, sizeof(*st));
+ st->container_dev = NoMdDev;
st->ss = &super_imsm;
st->max_devs = IMSM_MAX_DEVICES;
st->minor_version = 0;
if (!st) return st;
memset(st, 0, sizeof(*st));
+ st->container_dev = NoMdDev;
st->ss = &super0;
st->info = NULL;
st->minor_version = 90;
if (!st) return st;
memset(st, 0, sizeof(*st));
+ st->container_dev = NoMdDev;
st->ss = &super1;
st->max_devs = 384;
st->sb = NULL;
int i;
st = malloc(sizeof(*st));
+ memset(st, 0, sizeof(*st));
+ st->container_dev = NoMdDev;
+
for (i=0 ; superlist[i]; i++) {
int rv;
ss = superlist[i];