- delay?delay:60, daemonise, scan, oneshot, configfile);
+ delay?delay:60, daemonise, scan, oneshot, configfile, test, pidfile);
+ break;
+
+ case GROW:
+ if (devs_found > 1) {
+
+ /* must be '-a'. */
+ if (size >= 0 || raiddisks) {
+ fprintf(stderr, Name ": --size, --raiddisks, and --add are exclusing in --grow mode\n");
+ rv = 1;
+ break;
+ }
+ for (dv=devlist->next; dv ; dv=dv->next) {
+ rv = Grow_Add_device(devlist->devname, mdfd, dv->devname);
+ if (rv)
+ break;
+ }
+ } else if ((size >= 0) + (raiddisks != 0) + (layout != UnSet) > 1) {
+ fprintf(stderr, Name ": can change at most one of size, raiddisks, and layout\n");
+ rv = 1;
+ break;
+ } else if (layout != UnSet)
+ rv = Manage_reconfig(devlist->devname, mdfd, layout);
+ else if (size >= 0 || raiddisks)
+ rv = Manage_resize(devlist->devname, mdfd, size, raiddisks);
+ else
+ fprintf(stderr, Name ": no changes to --grow\n");