From: NeilBrown Date: Thu, 14 Jan 2016 03:09:57 +0000 (+1100) Subject: Create: minor fix when adding a journal device X-Git-Tag: mdadm-3.4~9 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=dfd7822ca686339f77ea808a4bdf2b085674e611;p=thirdparty%2Fmdadm.git Create: minor fix when adding a journal device The check of "is there a filesystem here" is still appropriate for a journal device. Also set active_disks correctly - even though it is ignored. Signed-off-by: NeilBrown --- diff --git a/Create.c b/Create.c index 40f1b7ea..1e4a6ee0 100644 --- a/Create.c +++ b/Create.c @@ -330,7 +330,7 @@ int Create(struct supertype *st, char *mddev, } close(dfd); info.array.working_disks++; - if (dnum < s->raiddisks) + if (dnum < s->raiddisks && dv->disposition != 'j') info.array.active_disks++; if (st == NULL) { struct createinfo *ci = conf_get_create_info(); @@ -400,7 +400,7 @@ int Create(struct supertype *st, char *mddev, } if (dv->disposition == 'j') - continue; /* skip write journal for size check */ + goto skip_size_check; /* skip write journal for size check */ freesize /= 2; /* convert to K */ if (s->chunk && s->chunk != UnSet) { @@ -434,6 +434,7 @@ int Create(struct supertype *st, char *mddev, mindisc = dname; minsize = freesize; } + skip_size_check: if (c->runstop != 1 || c->verbose >= 0) { int fd = open(dname, O_RDONLY); if (fd <0 ) {