[parted-devel] Rename boot flag in GPT to uefisys (WAS: Need for a unique Linux GPT GUID type code)

Rod Smith rodsmith at rodsbooks.com
Tue Mar 6 17:34:00 UTC 2012


On 03/06/2012 11:13 AM, Keshav P R wrote:
> On Tue, Mar 6, 2012 at 14:51, Jim Meyering<jim at meyering.net>  wrote:
>> Keshav P R wrote:
>>
>>> I also recommend changing
>>> "boot" flag in parted for GPT disk to
>>> something more meaningful like "uefisys". Many devs (of distro
>>> installers) are confused as to how to set a partition as EFI SYSTEM
>>> type in GPT disks and they do not know that "boot" in GPT disks sets a
>>> partition as UEFISYS unlike the same flag in MBR disks.
>>
>
> https://bugzilla.redhat.com/show_bug.cgi?id=746895
>
>> Please give an example of precisely what you would like to change,
>> and how.  If you are proposing to change only the input side of the UI,
>> (i.e., neither libparted, nor the output of parted) then adding an
>> alias might work.
>>
>
> I want to change the behaviour of the boot flag in GPT disks, or
> eliminate the boot flag in GPT altogether, and replace it with uefisys
> or a similar terminology, or alteast have uefisys as an extra flag for
> setting UEFI SYSTEM type code, independent of "boot" flag. The uefisys
> flag will also be useful for MBR disks since 0xEF MBR type is defined
> for the uefisys partition.

IMHO, this is worth doing. A lot of words have been expended in online 
forums describing the difference between the "boot flag" on GPT disks 
vs. MBR disks. They're entirely unrelated concepts, and making them look 
the same in the parted user interface is extremely confusing -- 
apparently not just to newbies, since OS installers get it wrong, too.

There *IS* a "legacy BIOS bootable" attribute in GPT (noted on the 
Wikipedia page for GPT and in the EFI spec, IIRC) that's close to the 
meaning of the MBR's "boot/active" flag. To the best of my knowledge, 
only SYSLINUX's GPT boot loader uses this attribute, but at least 
setting it incorrectly won't cause problems on EFI systems, as does 
setting the ESP type code incorrectly.

Thus, IMHO the way to proceed is to change the current "boot" flag to 
manage the "legacy BIOS bootable" attribute and create a new flag 
("uefisys", "esp", or whatever) to set the ESP type code. Alternatively, 
the "boot" flag could be removed and two new ones created, one for the 
ESP type code and another for the "legacy BIOS bootable" attribute.

One potential problem with doing this is that existing installers, 
scripts, etc., that DO use the "boot" flag correctly on GPT disks will 
need to be modified. If they aren't, they'll break. IMHO, the long-term 
gain is worth this short-term pain, but of course it's not my decision.

I could do this fix myself, but since my first parted patch has 
languished for over eight months, I'm reluctant to invest more coding 
time in the project.

-- 
Rod Smith
rodsmith at rodsbooks.com
http://www.rodsbooks.com



More information about the parted-devel mailing list