* grub-core/disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Skip
disks with unknown size. * grub-core/disk/raid.c (scan_devices): Allow disks with unknown sizes.
This commit is contained in:
parent
4d1e2bc9e3
commit
280d9d3e3e
4 changed files with 13 additions and 15 deletions
|
@ -618,7 +618,6 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
|
||||||
}
|
}
|
||||||
grub_printf ("\n");
|
grub_printf ("\n");
|
||||||
|
|
||||||
initrd_size = grub_file_size (file);
|
|
||||||
initrd_pages = (page_align (initrd_size) >> 12);
|
initrd_pages = (page_align (initrd_size) >> 12);
|
||||||
initrd_mem = grub_efi_allocate_pages (0, initrd_pages);
|
initrd_mem = grub_efi_allocate_pages (0, initrd_pages);
|
||||||
if (! initrd_mem)
|
if (! initrd_mem)
|
||||||
|
|
|
@ -478,10 +478,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
|
||||||
GRUB_RELOCATOR_PREFERENCE_NONE);
|
GRUB_RELOCATOR_PREFERENCE_NONE);
|
||||||
|
|
||||||
if (err)
|
if (err)
|
||||||
{
|
goto fail;
|
||||||
grub_file_close (file);
|
|
||||||
return err;
|
|
||||||
}
|
|
||||||
initrd_src = get_virtual_current_address (ch);
|
initrd_src = get_virtual_current_address (ch);
|
||||||
initrd_dest = get_physical_target_address (ch) | 0x80000000;
|
initrd_dest = get_physical_target_address (ch) | 0x80000000;
|
||||||
}
|
}
|
||||||
|
@ -507,10 +504,7 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
|
||||||
" rd_size=0x%" PRIxGRUB_ADDR, params,
|
" rd_size=0x%" PRIxGRUB_ADDR, params,
|
||||||
initrd_dest, size);
|
initrd_dest, size);
|
||||||
if (!tmp)
|
if (!tmp)
|
||||||
{
|
goto fail;
|
||||||
grub_file_close (file);
|
|
||||||
return grub_errno;
|
|
||||||
}
|
|
||||||
grub_free (params);
|
grub_free (params);
|
||||||
params = tmp;
|
params = tmp;
|
||||||
}
|
}
|
||||||
|
@ -532,9 +526,12 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
|
||||||
|
|
||||||
initrd_loaded = 1;
|
initrd_loaded = 1;
|
||||||
|
|
||||||
grub_file_close (file);
|
fail:
|
||||||
|
for (i = 0; i < nfiles; i++)
|
||||||
|
grub_file_close (files[i]);
|
||||||
|
grub_free (files);
|
||||||
|
|
||||||
return GRUB_ERR_NONE;
|
return grub_errno;
|
||||||
}
|
}
|
||||||
|
|
||||||
static grub_command_t cmd_linux, cmd_initrd;
|
static grub_command_t cmd_linux, cmd_initrd;
|
||||||
|
|
|
@ -380,8 +380,9 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
|
||||||
initrd_size = size;
|
initrd_size = size;
|
||||||
|
|
||||||
fail:
|
fail:
|
||||||
if (file)
|
for (i = 0; i < nfiles; i++)
|
||||||
grub_file_close (file);
|
grub_file_close (files[i]);
|
||||||
|
grub_free (files);
|
||||||
|
|
||||||
return grub_errno;
|
return grub_errno;
|
||||||
}
|
}
|
||||||
|
|
|
@ -445,8 +445,9 @@ grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)),
|
||||||
initrd_size = size;
|
initrd_size = size;
|
||||||
|
|
||||||
fail:
|
fail:
|
||||||
if (file)
|
for (i = 0; i < nfiles; i++)
|
||||||
grub_file_close (file);
|
grub_file_close (files[i]);
|
||||||
|
grub_free (files);
|
||||||
|
|
||||||
return grub_errno;
|
return grub_errno;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue