New BSD Installer

Andriy Gapon avg at
Fri Feb 17 10:46:53 UTC 2012

Hash: SHA1

on 17/02/2012 09:04 Hiroki Sato said the following:
> No, the issue is our gptloader assumes the backup header is always located
> at the (physical) last sector while this is not mandatory in the UEFI
> specification.

Are you sure?

Unified Extensible Firmware Interface Specification Version 2.3.1, Errata A
September 7, 2011 says:
> Two GPT Header structures are stored on the device: the primary and the
> backup. The primary GPT Header must be located in LBA 1 (i.e., the second
> logical block), and the backup GPT Header must be located in the last LBA
> of the device. Within the GPT Header the My LBA field contains the
> If the primary GPT is corrupt, software must check the last LBA of the
> device to see if it has a valid GPT Header and point to a valid GPT
> Partition Entry Array. If it points to a valid GPT Partition Entry Array,
> then software should restore the primary GPT if allowed by platform policy
> settings (e.g. a platform may require a user to provide confirmation before
> restoring the table, or may allow the table to be restored automatically).
> Software must report whenever it restores a GPT.
> Both the primary and backup GPTs must be valid before an attempt is made to
> grow the size of a physical volume. This is due to the GPT recovery scheme
> depending on locating the backup GPT at the end of the device. A volume may
> grow in size when disks are added to a RAID device. As soon as the volume
> size is increased the backup GPT must be moved to the end of the volume and
> the primary and backup GPT Headers must be updated to reflect the new
> volume size.

- -- 
Andriy Gapon
Version: GnuPG v2.0.18 (FreeBSD)
Comment: Using GnuPG with Mozilla -


More information about the freebsd-stable mailing list