Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 10 Aug 2012 12:31:39 +0400
From:      "Andrey V. Elsukov" <ae@FreeBSD.org>
To:        Lawrence Stewart <lstewart@freebsd.org>
Cc:        "freebsd-fs@freebsd.org" <freebsd-fs@freebsd.org>, Marcel Moolenaar <marcel@freebsd.org>
Subject:   Re: gpart rewrites pmbr in a way which breaks Win 7 EFI bootloader
Message-ID:  <5024C6EB.1040109@FreeBSD.org>
In-Reply-To: <50246E2C.1070604@freebsd.org>
References:  <50237B73.9040301@freebsd.org> <5023979B.4010903@yandex.ru> <5023A907.7060800@freebsd.org> <C43A8456-1B69-47BE-AFB5-3288CD16E789@xcllnt.net> <50246E2C.1070604@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help

[-- Attachment #1 --]
On 10.08.2012 6:13, Lawrence Stewart wrote:
>> What about the following: We have the kernel keep track of the firmware
>> used. On x86 this is either BIOS or UEFI in the common case. Other F/W
>> implementations like U-Boot, OFW, etc are possible as well, especially
>> on non-x86 machines.
>>
>> The geom_part scheme uses this information to determine how to behave
>> with respect to the PMBR. When booted with BIOS, non-standard stuff is
>> accepted by virtue of what we've seen in the field. With UEFI we can
>> start off being anal (read: strictly compliant) and extend out based
>> on what we run into.
>>
>> In particular: this way we also don't mess up the EFI/GPT support that
>> is there on ia64.
>>
>> Thoughts?

It seems this is not enough. The problem, that Lawrence has, is not
related to BIOS/UEFI. Automatic detection of various standard violation is
handy for our users, but sometimes false positives occur.

To solve all problems it seems we need to introduce several quirks, e.g.:

#define GPT_QUIRK_BOOTCAMP      0x0001  /* boot camp supported */
#define GPT_QUIRK_MSLOADER      0x0002  /* don't set Active flag to the PMBR entry */
#define GPT_QUIRK_IGNOREPMBR    0x0004	/* don't require PMBR entry */

The same quirks should be added to the loader(8).


-- 
WBR, Andrey V. Elsukov



[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (MingW32)

iQEcBAEBAgAGBQJQJMbxAAoJEAHF6gQQyKF69JMIAJtcBy9l2eLRvPhJ1YMW/SBP
7hWXYHodzAyrBUCvRzTgA3x7wbHfsCsR0qDi7CKUyfPN/4WQlP8l0SzLgssV357r
z3Ly3/7wiOaCLV0Kw70/J7h0zay2IO8ab/WioVfckm/13K7/hoUxw6FSNbMfkUFT
68acW67W4XzEPInh9PndtnAjv4cGg9k1ShrUaLa22XJC2OjGMDGY2p33AXY+zoWM
vdq7VxE2dNciCt/uGdA+eQw9PvZLrvh4j8i/PJCa9VZxNaLimoSLQxeCSMw7Gr5h
vutnkSH1axhFiFWVBUkk1Rn8MEoYuz72P/8seqypGCEscDDTqzg/otF0y5wTq58=
=1aut
-----END PGP SIGNATURE-----

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5024C6EB.1040109>