On Fri, Oct 06, 2017 at 02:58:30PM -0600, Eric Snowberg wrote: > > On Oct 6, 2017, at 8:04 AM, Daniel Kiper <dki...@net-space.pl> wrote: > > On Thu, May 11, 2017 at 06:25:24PM -0700, Eric Snowberg wrote: > >> Add block-list GPT support for SPARC. The OBP "load" and "boot" methods > >> are partition aware and neither command can see the partition table. Also > >> neither command can address the entire physical disk. When the install > >> happens, grub generates the block-list entries based on the beginning of > >> the > >> physical disk, not the beginning of the parition. This patch fixes the > >> block-list entries so they match what OBP expects during boot for a GPT > >> disk. > >> > >> T5 and above now supports GPT as well as VTOC. > >> > >> This patch has been tested on T5-2 and newer SPARC systems. > >> > >> Signed-off-by: Eric Snowberg <eric.snowb...@oracle.com> > >> --- > >> Changes in v2: > >> Do all GPT offset calculations in setup > >> --- > >> util/setup.c | 26 +++++++++++++++++++++++--- > >> 1 files changed, 23 insertions(+), 3 deletions(-) > >> > >> diff --git a/util/setup.c b/util/setup.c > >> index 8aa5a39..8036307 100644 > >> --- a/util/setup.c > >> +++ b/util/setup.c > >> @@ -138,6 +138,9 @@ struct blocklists > >> #ifdef GRUB_SETUP_BIOS > >> grub_uint16_t current_segment; > >> #endif > >> +#ifdef GRUB_SETUP_SPARC64 > >> + grub_uint64_t gpt_offset; > >> +#endif > > > > This does not seem to be used below??? > > After looking into this further, I don???t see a problem...
Sorry, it is a problem. It declares the gpt_offset variable here... > >> grub_uint16_t last_length; > >> grub_disk_addr_t first_sector; > >> }; > >> @@ -151,6 +154,10 @@ save_blocklists (grub_disk_addr_t sector, unsigned > >> offset, unsigned length, > >> struct grub_boot_blocklist *prev = bl->block + 1; > >> grub_uint64_t seclen; > >> > >> +#ifdef GRUB_SETUP_SPARC64 > >> + sector -= bl->gpt_offset; > > It is used here ...and you reference here and below struct member using the same name. So, it is different thing. Hence, we do not need declaration above. Daniel _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel