summaryrefslogtreecommitdiffstats
path: root/Detail.c
diff options
context:
space:
mode:
Diffstat (limited to 'Detail.c')
-rw-r--r--Detail.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/Detail.c b/Detail.c
index 8d7a5ff..370177a 100644
--- a/Detail.c
+++ b/Detail.c
@@ -51,6 +51,7 @@ int Detail(char *dev, int brief, int test)
int is_rebuilding = 0;
int failed = 0;
struct supertype *st = NULL;
+ int max_disks = MD_SB_DISKS;
void *super = NULL;
int rv = test ? 4 : 1;
@@ -89,8 +90,10 @@ int Detail(char *dev, int brief, int test)
stb.st_rdev = 0;
rv = 0;
+ if (st) max_disks = st->max_devs;
+
/* try to load a superblock */
- for (d= 0; d<MD_SB_DISKS; d++) {
+ for (d= 0; d<max_disks; d++) {
mdu_disk_info_t disk;
char *dv;
disk.number = d;
@@ -210,7 +213,7 @@ int Detail(char *dev, int brief, int test)
printf(" Number Major Minor RaidDevice State\n");
}
- for (d= 0; d<MD_SB_DISKS; d++) {
+ for (d= 0; d < max_disks; d++) {
mdu_disk_info_t disk;
char *dv;
disk.number = d;