[PATCH] sparc64: Fix BIOS Boot Partition support
Currently, gpt_offset is uninitialised when using a BIOS Boot Partition but is used unconditionally inside save_blocklists. Instead, ensure it is always initialised to 0 (note that there is already separate code to do the equivalent adjustment after we call save_blocklists on this code path). This patch has been tested on a T5-2 LDOM. Signed-off-by: James Clarke <jrtc27@jrtc27.com> Tested-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de> Reviewed-by: Vladimir Serbinenko <phcoder@gmail.com> Reviewed-by: Eric Snowberg <eric.snowberg@oracle.com> --- util/setup.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
This commit is contained in:
parent
8f6843ce60
commit
4e75b2ae31
1 changed files with 3 additions and 1 deletions
|
@ -270,6 +270,9 @@ SETUP (const char *dir,
|
|||
#ifdef GRUB_SETUP_BIOS
|
||||
bl.current_segment =
|
||||
GRUB_BOOT_I386_PC_KERNEL_SEG + (GRUB_DISK_SECTOR_SIZE >> 4);
|
||||
#endif
|
||||
#ifdef GRUB_SETUP_SPARC64
|
||||
bl.gpt_offset = 0;
|
||||
#endif
|
||||
bl.last_length = 0;
|
||||
|
||||
|
@ -730,7 +733,6 @@ unable_to_embed:
|
|||
#ifdef GRUB_SETUP_SPARC64
|
||||
{
|
||||
grub_partition_t container = root_dev->disk->partition;
|
||||
bl.gpt_offset = 0;
|
||||
|
||||
if (grub_strstr (container->partmap->name, "gpt"))
|
||||
bl.gpt_offset = grub_partition_get_start (container);
|
||||
|
|
Loading…
Reference in a new issue