* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Do not put
elements with invlid index. * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise. * grub-core/disk/raid.c (insert_array): Automatically reallocate members. * include/grub/raid.h (grub_raid_member): New struct. (grub_raid_array): Transform devices and start_sector into usage of grub_raid_member. All users updated (allocated_devs): New member.
This commit is contained in:
parent
71574288a4
commit
3a1197cdb0
7 changed files with 88 additions and 38 deletions
|
@ -194,6 +194,9 @@ grub_mdraid_detect (grub_disk_t disk, struct grub_raid_array *array,
|
|||
sb.level != 5 && sb.level != 6 && sb.level != 10)
|
||||
return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET,
|
||||
"unsupported RAID level: %d", sb.level);
|
||||
if (sb.this_disk.number == 0xffff || sb.this_disk.number == 0xfffe)
|
||||
return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET,
|
||||
"spares aren't implemented");
|
||||
|
||||
array->name = NULL;
|
||||
array->number = sb.md_minor;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue