Re: boot loaders got fatter in the last few days

From: Allan Jude <allanjude_at_freebsd.org>
Date: Fri, 18 Mar 2016 17:45:23 -0400
On 2016-03-18 17:41, Freddie Cash wrote:
>
> On Fri, Mar 18, 2016 at 10:39 AM, Conrad Meyer <cem_at_freebsd.org
> <mailto:cem_at_freebsd.org>> wrote:
>
>     On Fri, Mar 18, 2016 at 10:03 AM, Allan Jude <allanjude_at_freebsd.org
>     <mailto:allanjude_at_freebsd.org>> wrote:
>      > On 2016-03-18 12:33, Guido Falsi wrote:
>      >>
>      >> Hi,
>      >>
>      >> I have just update one of my machines and noticed the booloaders
>     files
>      >> got quite fat in the last few days, some by a big margin.
>      >>
>      >> on an updated machine(r296993):
>      >>
>      >> -r--r--r--  1 root  wheel   85794 Mar 18 16:47 /boot/gptboot
>      >>
>      >> from a machine I still have not updated(r296719):
>      >>
>      >> -r--r--r--  1 root  wheel   16059 Mar 13 21:01 /boot/gptboot
>
>     So the loader grew 70 kB.  How big are your disks?
>
>      >> I noticed because mu gpt boot partition is 64K and gptzfsboot just
>      >> passed 100K.
>      >
>      > This is a side effect of the loader gaining the ability to boot
>     from GELI
>      > encrypted partitions.
>      >
>      > ...
>      >
>      > Maybe we should be putting the GELI enabled boot blocks in a
>     different
>      > filename? I generally wanted to avoid creating a new version of each
>      > bootcode with GELI support.
>
>
>     I think we should just suggest that boot partitions be much larger
>     than 64kB (1MB is still <0.1% of any disk sold today) and not worry
>     about it too much.  Embedded applications can disable GELI loader
>     support to save a few bytes.
>
>
> ​The boot partition doesn't necessarily need ​
> ​to be 1 MB (and can't due to some issues with the assembler used right
> now, or something like that).  We just need to make sure people have
> slack space in their partition table to expand into in the future.
>
> Using "-a 1M" in your gpart command to create your first data partition
> gives you that slack space.
>
> gpart create -s gpt ada0
> gpart add -t freebsd-boot -s 256K -l boot ada0
> gpart add -t freebsd-ufs  -s 10G  -l root -a 1M ada0
>
> That leaves ~756 KB of free space between the end of the boot partition
> and the start of the first data partition.  Increasing the size of the
> boot partition in the future is as easy as (no formatting of disks
> required):
>
> gpart delete -i 1 ada0
> gpart add -t freebsd-boot -s 512K -l boot ada0
> gpart bootcode -b ... -p ... ada0
>
> It's a handy pattern I've gotten used to over the years, ever since the
> first 4K sector harddrives were advertised (as alignment of filesystems
> was/is *very* important)​.
>
> Even on disks that will be used solely for ZFS I've taken to creating
> GPT partitions starting at 1 MB.  And it's saved me from having to
> reformat disks when moving from a separate root filesystem (no USB
> sticks) to root-on-ZFS as there was 1 MB of free space at the start of
> every disk for creating boot partitions.  :)
>
> --
> Freddie Cash
> fjwcash_at_gmail.com <mailto:fjwcash_at_gmail.com>

This also has the handy side effect of allowing you to switch to booting 
with UEFI, which currently uses an 800kb fat file system

-- 
Allan Jude
Received on Fri Mar 18 2016 - 20:45:37 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:03 UTC