[Bug 700465] New: Hybrid MBR inappropriately created on EFI installation
https://bugzilla.novell.com/show_bug.cgi?id=700465 https://bugzilla.novell.com/show_bug.cgi?id=700465#c0 Summary: Hybrid MBR inappropriately created on EFI installation Classification: openSUSE Product: openSUSE 11.4 Version: Final Platform: x86-64 OS/Version: openSUSE 11.4 Status: NEW Severity: Major Priority: P5 - None Component: Installation AssignedTo: bnc-team-screening@forge.provo.novell.com ReportedBy: rodsmith@rodsbooks.com QAContact: jsrain@novell.com Found By: --- Blocker: --- User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.17) Gecko/20110514 Gentoo Firefox/3.6.17 It seems that whenever OpenSUSE installs to a GUID Partition Table (GPT) disk, it creates a hybrid MBR (see http://www.rodsbooks.com/gdisk/hybrid.html for a discussion of this technology). Hybrid MBRs are a dangerous hack used by Apple to enable Windows to coexist with Mac OS X on a GPT disk. A Linux-only installation on a BIOS-based computer does not need them, and no installation on a UEFI-based PC needs them, since Windows boots natively from GPT in such situations. In fact, if a hybrid MBR is created on a UEFI PC, that may render Windows unable to boot, since Windows favors the MBR side of a hybrid MBR, and the Windows partitions might not be in the hybrid MBR. (I'm not even sure if Windows would boot even if its partition WAS included on the MBR side.) Worse, the hybridized partitions are INCORRECT; they're all short by one sector. Furthermore, hybrid MBRs violate the GPT specification. From the UEFI specification, version 2.3 errata B, p. 98, with reference to protective MBR entries: "One of the Partition Records shall be as defined in table 12, reserving the entire space on the disk after the Protective MBR itself for the GPT disk layout... The remaining Partition Records shall each be set to zeros." In other words, one and only one partition, the type-0xEE protective partition, may be defined in the MBR of a legal GPT disk. As a general rule, I'd say that creating a hybrid MBR, even on a BIOS-based computer, is inappropriate. The ONLY time when it might be justified is if the installer detects an existing hybrid MBR on the disk and the user modifies one or more of the hybridized partitions. In that case, the installer might reasonably re-create the hybrid MBR to match the new partition sizes. Otherwise, the installer should create or modify a legal GPT. If the user needs a hybrid MBR (to install Windows on a Mac, typically), the user can create one him/herself or with the help of other utilities (such as Apple's Boot Camp). OpenSUSE does not benefit from a hybrid MBR, and creating one can cause problems in some circumstances, such as a Windows/OpenSUSE dual-boot on a UEFI-based computer. This bug affects few people today, since most people install to MBR disks; but as UEFI-based computers become more common, this bug will start to be more important, as Windows installations break because of this bug. Reproducible: Always Steps to Reproduce: 1.Install OpenSUSE on a GPT disk. 2. 3. Actual Results: A hybrid MBR is created when one didn't exist before. Expected Results: A valid GPT disk with a standard protective MBR should have continued to exist. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=700465 https://bugzilla.novell.com/show_bug.cgi?id=700465#c Petr Uzel <puzel@novell.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Priority|P5 - None |P3 - Medium CC| |agraf@novell.com, | |puzel@novell.com AssignedTo|bnc-team-screening@forge.pr |puzel@novell.com |ovo.novell.com | -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=700465 https://bugzilla.novell.com/show_bug.cgi?id=700465#c Petr Uzel <puzel@novell.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=700465 https://bugzilla.novell.com/show_bug.cgi?id=700465#c1 Petr Uzel <puzel@novell.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status Whiteboard| |parted --- Comment #1 from Petr Uzel <puzel@novell.com> 2011-08-16 08:31:20 UTC --- Thanks for the report. I'm currently reworking the code. Once it is done, it will do exactly what you request - it won't create hybrid MBR unless there is one already. I'll update this bug when submitted to openSUSE Factory. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=700465 https://bugzilla.novell.com/show_bug.cgi?id=700465#c2 --- Comment #2 from Petr Uzel <puzel@novell.com> 2011-08-16 09:16:39 UTC --- (In reply to comment #0)
Worse, the hybridized partitions are INCORRECT; they're all short by one sector.
Fix for this is submitted to Factory. Rest later :) -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=700465 https://bugzilla.novell.com/show_bug.cgi?id=700465#c3 --- Comment #3 from Bernhard Wiedemann <bwiedemann@novell.com> 2011-08-16 12:00:16 CEST --- This is an autogenerated message for OBS integration: This bug (700465) was mentioned in https://build.opensuse.org/request/show/79012 Factory / parted -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=700465 https://bugzilla.novell.com/show_bug.cgi?id=700465#c4 Petr Uzel <puzel@novell.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution| |FIXED --- Comment #4 from Petr Uzel <puzel@novell.com> 2011-08-25 12:37:46 UTC --- I patched parted to recognize new label pseudotype 'gpt_sync_mbr'. This label is used to create hybrid MBR. Normal 'gpt' label creates non-hybrid protective MBR as requested by the specification. Installer (libstorage) will be changed not to use hybrid MBR on EFI systems. Therefore I think we can close this bug. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@novell.com