]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
mdmon: initialize component_size in manage_new
authorDan Williams <dan.j.williams@intel.com>
Mon, 14 Jul 2008 21:59:39 +0000 (14:59 -0700)
committerDan Williams <dan.j.williams@intel.com>
Mon, 14 Jul 2008 21:59:39 +0000 (14:59 -0700)
When we go to activate a spare for an array we expect ->info.component_size
is valid.

Signed-off-by: Dan Williams <dan.j.williams@intel.com>
managemon.c

index 3814fa95b5143fe9ebf65a0543050f3f1a646df0..94fbcb2ce67c519b212de1685a286c943cfff691 100644 (file)
@@ -336,7 +336,7 @@ static void manage_new(struct mdstat_ent *mdstat,
        inst = &mdstat->metadata_version[10+strlen(container->devname)+1];
 
        mdi = sysfs_read(-1, new->devnum,
-                        GET_LEVEL|GET_CHUNK|GET_DISKS|
+                        GET_LEVEL|GET_CHUNK|GET_DISKS|GET_COMPONENT|
                         GET_DEVS|GET_OFFSET|GET_SIZE|GET_STATE);
        if (!mdi) {
                /* Eeek. Cannot monitor this array.
@@ -348,6 +348,7 @@ static void manage_new(struct mdstat_ent *mdstat,
        }
 
        new->info.array = mdi->array;
+       new->info.component_size = mdi->component_size;
 
        for (i = 0; i < new->info.array.raid_disks; i++) {
                struct mdinfo *newd = malloc(sizeof(*newd));