diff options
author | NeilBrown <neilb@suse.com> | 2016-01-14 14:09:57 +1100 |
---|---|---|
committer | NeilBrown <neilb@suse.com> | 2016-01-14 14:13:17 +1100 |
commit | dfd7822ca686339f77ea808a4bdf2b085674e611 (patch) | |
tree | 1c6995aec79577a09996f3547086bcf9ee62e7da | |
parent | f170a5a9a0b5dbdd502b1014cfe040bf83da5ccf (diff) | |
download | mdadm-dfd7822ca686339f77ea808a4bdf2b085674e611.tar.gz |
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 <neilb@suse.com>
-rw-r--r-- | Create.c | 5 |
1 files changed, 3 insertions, 2 deletions
@@ -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 ) { |