c.homecluster = optarg;
if (strlen(c.homecluster) > 64) {
pr_err("Cluster name too big.\n");
- exit(ERANGE);
+ exit(2);
}
continue;
case O(CREATE,'x'): /* number of spare (eXtra) disks */
break;
}
- if (s.level != 1) {
- pr_err("--bitmap=clustered is currently supported with RAID mirror only\n");
+ if (s.level != 1 && s.level != 10) {
+ pr_err("--bitmap=clustered is currently supported with raid1/10 only\n");
+ rv = 1;
+ break;
+ }
+ if (s.level == 10 && !is_near_layout_10(s.layout)) {
+ pr_err("only near layout is supported with clustered raid10\n");
rv = 1;
break;
}
autodetect();
break;
}
+ if (mdfd > 0)
+ close(mdfd);
exit(rv);
}
if (devmode == 'D')
rv |= Detail(name, c);
else
- rv |= WaitClean(name, -1, c->verbose);
+ rv |= WaitClean(name, c->verbose);
put_md_name(name);
}
}
rv |= Wait(dv->devname);
continue;
case Waitclean:
- rv |= WaitClean(dv->devname, -1, c->verbose);
+ rv |= WaitClean(dv->devname, c->verbose);
continue;
case KillSubarray:
rv |= Kill_subarray(dv->devname, c->subarray, c->verbose);