]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
super1: fix space_{before,after} for RAID0
authorNeilBrown <neilb@suse.de>
Mon, 24 Jun 2013 06:24:08 +0000 (16:24 +1000)
committerNeilBrown <neilb@suse.de>
Mon, 24 Jun 2013 06:24:08 +0000 (16:24 +1000)
For RAID0 we need to use 'data_size', no 'size' as later is 0.

Signed-off-by: NeilBrown <neilb@suse.de>
super1.c

index 16dfd389e09ca13bb370422b0094f98ce7fcda1f..088df4bf3e9d13764961e2e0af12b0fc59fa061f 100644 (file)
--- a/super1.c
+++ b/super1.c
@@ -911,7 +911,10 @@ static void getinfo_super1(struct supertype *st, struct mdinfo *info, char *map)
                role = __le16_to_cpu(sb->dev_roles[__le32_to_cpu(sb->dev_number)]);
 
        super_offset = __le64_to_cpu(sb->super_offset);
-       data_size = __le64_to_cpu(sb->size);
+       if (info->array.level <= 0)
+               data_size = __le64_to_cpu(sb->data_size);
+       else
+               data_size = __le64_to_cpu(sb->size);
        if (info->data_offset < super_offset) {
                unsigned long long end;
                info->space_before = info->data_offset;