13 Commits

Author SHA1 Message Date
ae
e88fea28d3 Add a bit more debug messages. 2014-10-05 06:00:22 +00:00
ae
b089d06439 Add GUID of FreeBSD slice to GPT scheme.
MFC after:	1 week
2014-10-03 21:46:07 +00:00
ae
a8ed877a78 Since the size of GPT entry may differ from the sizeof(struct gpt_ent),
use the size from GPT header to iterate entries.

Suggested by:	marcel@
MFC after:	1 week
2014-08-25 07:15:14 +00:00
ae
ddb1a6406f The size of the GPT table can not be less than one sector.
Reported by:	rodrigc@
MFC after:	1 week
2014-08-24 09:20:30 +00:00
ae
5c8976a1c1 When loader(8) inspects MBR, it chooses GPT as main partition table,
when MBR contains only PMBR entry or it is bootcamp-compatible.
If MBR has PMBR entry and some other, the loader rejects it.

Make these checks to be less strict. If loader decided that PMBR
isn't suitable for GPT, it will use MBR.

Reported by:	Paul Thornton
Tested by:	Paul Thornton
MFC after:	1 week
2014-03-21 09:29:01 +00:00
ae
612b57c66c Make the check for number of entries less strict.
Some partitioning tools can create GPT with number of entries less
than 128.

MFC after:	1 week
2013-08-08 11:24:25 +00:00
ae
a16dc1156c Add bootcamp support to the loader.
Tested by:	dchagin
MFC after:	1 week
2013-02-10 19:27:17 +00:00
kientzle
2bde8e86c1 The MBR data is not necessarily aligned. This is a problem on ARM. 2012-09-14 05:24:06 +00:00
ae
e3f0c35a5b Add comment why the code has been disabled.
Requested by:	rpaulo
2012-08-16 06:45:58 +00:00
ae
0923bbf433 Some BIOSes return incorrect number of sectors, make checks less
strictly, to do not lost some partitions.

Reported by:	swills@
2012-08-15 12:01:13 +00:00
ae
8a893b0e68 As it turned out, there are some installations, where BSD label
contains partitions with type zero. And it has worked.
So, allow detect these partitions.

Reported by:	glebius
2012-08-07 09:22:46 +00:00
ae
956191c4f0 Fix start offset calculation for the EBR partitions. 2012-08-06 08:54:06 +00:00
ae
d2a5499009 Create the interface to work with various partition tables from the
loader(8). The following partition tables are supported: BSD label, GPT,
MBR, EBR and VTOC8.
2012-08-05 11:29:44 +00:00