NetBSD-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: GRUB2 chainloading GPT NetBSD partition



beaker%sdf.org@localhost (beaker) writes:

>mlelstv%serpens.de@localhost (Michael van Elst) wrote:
>> Booting from a msdos partititon with a ffsv2 bootloader?

>It's not an msdos partion AFAIK but dkctl(8) lists it like that:

That's because the partition type is marked as "EFI".

>  269486080  125829120      3  GPT part - EFI System
>                                 Type: efi

>Also AFAIK the primary bootstrap code is still installed on gpt3 (rdk2).

Yes, but we learned that this bootstrap code will only handle GPT
if started with a magic number in register %eax. Something that
grub isn't doing.

grub only passes the boot drive number in %edx and a pointer into
the MBR partition table in %esi. So it's started with the same
parameters as the MBR when called by BIOS (with the 16bit
register counterparts DL and SI).

If I understand the grub code correctly, the %esi pointer is 0
if the "parent partition map" is a GPT instead of a MBR. A
compatible hack could check for this instead of the magic
number.



Home | Main Index | Thread Index | Old Index