On special systems where the MBR and the GPT are in sync (up to the 4th

slicei, Apple EFI hardware), the bootloader will fail to recognize the GPT
if it finds anything else but the EFI partition. Change the check to continue
detecting the GPT by looking at the EFI partition on the MBR but
stopping successfuly after finding it.

PR:		kern/134590
Submitted by:	Christoph Langguth <christoph at rosenkeller.org>
Reviewed by:	jhb
MFC after:	2 weeks
Approved by:	re (kib)
This commit is contained in:
Rui Paulo 2009-06-26 09:32:31 +00:00
parent c173381881
commit 1e5fd3f467
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=195045

View file

@ -880,7 +880,7 @@ bd_open_gpt(struct open_disk *od, struct i386_devdesc *dev)
for (i = 0; i < NDOSPART; i++) {
if (dp[i].dp_typ == 0xee)
part++;
else if (dp[i].dp_typ != 0x00)
else if ((part != 1) && (dp[i].dp_typ != 0x00))
return (EINVAL);
}
if (part != 1)