super0: Fix reporting of devices between 2GB and 4GB
v0.90 metadata can handle devices between 2GB and 4GB, but we need to treat the 'size' and unsigned. In a couple of places we don't. URL: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=809447 Signed-off-by: NeilBrown <neilb@suse.com>
This commit is contained in:
parent
cec72c071b
commit
9f7f28ee50
5
Detail.c
5
Detail.c
|
@ -425,8 +425,9 @@ int Detail(char *dev, struct context *c)
|
|||
else
|
||||
printf(" Used Dev Size : unknown\n");
|
||||
} else
|
||||
printf(" Used Dev Size : %d%s\n", array.size,
|
||||
human_size((long long)array.size<<10));
|
||||
printf(" Used Dev Size : %lu%s\n",
|
||||
(unsigned long)array.size,
|
||||
human_size((unsigned long long)array.size<<10));
|
||||
}
|
||||
if (array.raid_disks)
|
||||
printf(" Raid Devices : %d\n", array.raid_disks);
|
||||
|
|
3
super0.c
3
super0.c
|
@ -405,7 +405,8 @@ static void getinfo_super0(struct supertype *st, struct mdinfo *info, char *map)
|
|||
info->array.utime = sb->utime;
|
||||
info->array.chunk_size = sb->chunk_size;
|
||||
info->array.state = sb->state;
|
||||
info->component_size = sb->size*2;
|
||||
info->component_size = sb->size;
|
||||
info->component_size *= 2;
|
||||
|
||||
if (sb->state & (1<<MD_SB_BITMAP_PRESENT))
|
||||
info->bitmap_offset = 8;
|
||||
|
|
Loading…
Reference in New Issue