diff options
author | NeilBrown <neilb@suse.de> | 2009-05-11 15:18:20 +1000 |
---|---|---|
committer | NeilBrown <neilb@suse.de> | 2009-05-11 15:18:20 +1000 |
commit | 061f2c6abd014c9f30ca2d784cb535e3e3452c65 (patch) | |
tree | 63c5696cf22393743a3506aee8adfaf2222f4961 | |
parent | 9652457eea62c06f48df1035218cdcb6f756b74d (diff) | |
download | mdadm-061f2c6abd014c9f30ca2d784cb535e3e3452c65.tar.gz |
Make --brief even briefer.
Because ---examine --brief, or --detail --brief are
often used to create mdadm.conf, and because people don't want to
have to update their mdadm.conf unnecessarily, we don't want to
include information that might change.
And now that level changing is supported, that is almost everything
but UUID.
So move some more fields into the "Only print with --verbose" class.
Signed-off-by: NeilBrown <neilb@suse.de>
-rw-r--r-- | Detail.c | 18 | ||||
-rw-r--r-- | Examine.c | 2 | ||||
-rw-r--r-- | mdadm.h | 2 | ||||
-rw-r--r-- | super-ddf.c | 2 | ||||
-rw-r--r-- | super-intel.c | 2 | ||||
-rw-r--r-- | super0.c | 16 | ||||
-rw-r--r-- | super1.c | 12 |
7 files changed, 31 insertions, 23 deletions
@@ -196,14 +196,16 @@ int Detail(char *dev, int brief, int export, int test, char *homehost) if (brief) { mdu_bitmap_file_t bmf; - if (array.raid_disks) - printf("ARRAY %s level=%s num-devices=%d", dev, - c?c:"-unknown-", - array.raid_disks ); - else - printf("ARRAY %s level=container num-devices=%d", - dev, array.nr_disks); - + printf("ARRAY %s", dev); + if (brief > 1) { + if (array.raid_disks) + printf("level=%s num-devices=%d", + c?c:"-unknown-", + array.raid_disks ); + else + printf("level=container num-devices=%d", + array.nr_disks); + } if (container) { printf(" container=%s", container); printf(" member=%s", member); @@ -141,7 +141,7 @@ int Examine(mddev_dev_t devlist, int brief, int export, int scan, for (ap=arrays; ap; ap=ap->next) { char sep='='; char *d; - ap->st->ss->brief_examine_super(ap->st); + ap->st->ss->brief_examine_super(ap->st, brief > 1); if (ap->spares) printf(" spares=%d", ap->spares); if (brief > 1) { printf(" devices"); @@ -440,7 +440,7 @@ extern struct superswitch { * device. ->load_super has been called. */ void (*examine_super)(struct supertype *st, char *homehost); - void (*brief_examine_super)(struct supertype *st); + void (*brief_examine_super)(struct supertype *st, int verbose); void (*export_examine_super)(struct supertype *st); /* Used to report details of an active array. diff --git a/super-ddf.c b/super-ddf.c index fa4d351..77a481f 100644 --- a/super-ddf.c +++ b/super-ddf.c @@ -1162,7 +1162,7 @@ static void getinfo_super_ddf(struct supertype *st, struct mdinfo *info); static void uuid_from_super_ddf(struct supertype *st, int uuid[4]); -static void brief_examine_super_ddf(struct supertype *st) +static void brief_examine_super_ddf(struct supertype *st, int verbose) { /* We just write a generic DDF ARRAY entry */ diff --git a/super-intel.c b/super-intel.c index 300c7b8..a2e3b7f 100644 --- a/super-intel.c +++ b/super-intel.c @@ -753,7 +753,7 @@ static void examine_super_imsm(struct supertype *st, char *homehost) } } -static void brief_examine_super_imsm(struct supertype *st) +static void brief_examine_super_imsm(struct supertype *st, int verbose) { /* We just write a generic IMSM ARRAY entry */ struct mdinfo info; @@ -232,7 +232,7 @@ static void examine_super0(struct supertype *st, char *homehost) } } -static void brief_examine_super0(struct supertype *st) +static void brief_examine_super0(struct supertype *st, int verbose) { mdp_super_t *sb = st->sb; char *c=map_num(pers, sb->level); @@ -240,14 +240,18 @@ static void brief_examine_super0(struct supertype *st) sprintf(devname, "/dev/md%d", sb->md_minor); - printf("ARRAY %s level=%s num-devices=%d UUID=", - devname, - c?c:"-unknown-", sb->raid_disks); + if (verbose) { + printf("ARRAY %s level=%s num-devices=%d", + devname, + c?c:"-unknown-", sb->raid_disks); + } else + printf("ARRAY %s", devname); + if (sb->minor_version >= 90) - printf("%08x:%08x:%08x:%08x", sb->set_uuid0, sb->set_uuid1, + printf(" UUID=%08x:%08x:%08x:%08x", sb->set_uuid0, sb->set_uuid1, sb->set_uuid2, sb->set_uuid3); else - printf("%08x", sb->set_uuid0); + printf(" UUID=%08x", sb->set_uuid0); printf("\n"); } @@ -414,7 +414,7 @@ static void examine_super1(struct supertype *st, char *homehost) } -static void brief_examine_super1(struct supertype *st) +static void brief_examine_super1(struct supertype *st, int verbose) { struct mdp_superblock_1 *sb = st->sb; int i; @@ -430,9 +430,9 @@ static void brief_examine_super1(struct supertype *st) else nm = NULL; - printf("ARRAY%s%s level=%s ", - nm ? " /dev/md/":"", nm, - c?c:"-unknown-"); + printf("ARRAY%s%s", nm ? " /dev/md/":"", nm); + if (verbose && c) + printf(" level=%s", c); sb_offset = __le64_to_cpu(sb->super_offset); if (sb_offset <= 4) printf("metadata=1.1 "); @@ -440,7 +440,9 @@ static void brief_examine_super1(struct supertype *st) printf("metadata=1.2 "); else printf("metadata=1.0 "); - printf("num-devices=%d UUID=", __le32_to_cpu(sb->raid_disks)); + if (verbose) + printf("num-devices=%d ", __le32_to_cpu(sb->raid_disks)); + printf("UUID="); for (i=0; i<16; i++) { if ((i&3)==0 && i != 0) printf(":"); printf("%02x", sb->set_uuid[i]); |