fputs(Version, stderr);
exit(0);
- case 'v': verbose = 1;
+ case 'v': verbose++;
continue;
case 'b':
continue;
case O(BUILD,'f'): /* force honouring '-n 1' */
+ case O(GROW,'f'): /* ditto */
case O(CREATE,'f'): /* force honouring of device list */
case O(ASSEMBLE,'f'): /* force assembly */
case O(MISC,'f'): /* force zero */
continue;
if (strcmp(update, "resync")==0)
continue;
+ if (strcmp(update, "byteorder")==0) {
+ if (ss) {
+ fprintf(stderr, Name ": must not set metadata type with --update=byteorder.\n");
+ exit(2);
+ }
+ for(i=0; !ss && superlist[i]; i++)
+ ss = superlist[i]->match_metadata_desc("0.swap");
+ if (!ss) {
+ fprintf(stderr, Name ": INTERNAL ERROR cannot find 0.swap\n");
+ exit(2);
+ }
+
+ continue;
+ }
fprintf(stderr, Name ": '--update %s' invalid. Only 'sparc2.2', 'super-minor', 'resync' or 'summaries' supported\n",update);
exit(2);
fprintf(stderr, Name ": No devices listed in %s\n", configfile?configfile:DefaultConfFile);
exit(1);
}
- rv = Examine(devlist, scan?!verbose:brief, scan, SparcAdjust, ss);
+ rv = Examine(devlist, scan?(verbose>1?0:verbose+1):brief, scan, SparcAdjust, ss);
} else {
if (devlist == NULL) {
if (devmode=='D' && scan) {
e->dev);
continue;
}
- rv |= Detail(name, !verbose, test);
+ rv |= Detail(name, verbose>1?0:verbose+1, test);
put_md_name(name);
}
} else if (devmode == 'S' && scan) {
for (dv=devlist ; dv; dv=dv->next) {
switch(dv->disposition) {
case 'D':
- rv |= Detail(dv->devname, brief, test); continue;
+ rv |= Detail(dv->devname, brief?1+verbose:0, test); continue;
case 'K': /* Zero superblock */
rv |= Kill(dv->devname, force); continue;
case 'Q':