File system blocks alignment

Marcel Moolenaar xcllnt at
Wed Dec 30 20:47:53 UTC 2009

On Dec 29, 2009, at 3:26 AM, James R. Van Artsdalen wrote:

> Alexander Motin wrote:
>> As we have now mechanism for reporting stripe size and offset for any
>> partition to user-level, it should be easy to make disk partitioning and
>> file system creation tools to use it automatically.
> Currently all operating systems I know of allocate 128 partition slot
> into GPT by default, or 32 blocks.  With the dummy MBR and GPT header
> added this means that the first partition starts on block 34...
> If FreeBSD is changed to allocate only 120 GPT partition slots by
> default then the first partition would begin at block 32.

The minimum is 128 partitions as per the EFI/GPT specification.

There's no requirement that the partitioned area on the disk follows
the GPT header/table in a packed fashion. You can leave a gap. Thus
you can have the partitioned area start at sector 64.

Note that gpart does not (yet) allow you to do this, but it does
respect these parameters when found in the GPT header and won't count
the sectors in this gap towards free space.

See also the hdr_lba_start & hdr_lba_end fields in struct gpt_hdr.


Marcel Moolenaar
xcllnt at

More information about the freebsd-current mailing list