diff options
-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 fa4d351c..77a481f3 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 300c7b86..a2e3b7fc 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]); |