On Fri, Dec 16, 2016 at 11:00 AM, Dimitry Andric <dim at freebsd.org>
wrote:> On 16 Dec 2016, at 18:53, Antony Uspensky <uspensky at x-art.ru>
wrote:
>>
>> On Fri, 16 Dec 2016, Eric van Gyzen wrote:
>>> On 12/16/2016 11:39, Slawa Olhovchenkov wrote:
>>>> On Fri, Dec 16, 2016 at 06:08:34PM +0100, Fernando Herrero
Carr?n wrote:
>>>>> Hi everyone,
>>>>>
>>>>> A few months ago I got myself a new box and I have been
happily running
>>>>> FreeBSD on it ever since. I noticed that the boot was not
as fast as I had
>>>>> expected and I've realized that, while my disk is GPT
partitioned, the boot
>>>>> process is still BIOS based:
>>>>>
>>>>> % gpart show
>>>>> => 34 976773101 ada0 GPT (466G)
>>>>> 34 6 - free - (3.0K)
>>>>> 40 1024 1 freebsd-boot (512K)
>>>>> 1064 984 - free - (492K)
>>>>> 2048 67108864 2 freebsd-swap (32G)
>>>>> 67110912 909662208 3 freebsd-zfs (434G)
>>>>> 976773120 15 - free - (7.5K)
> ...
>> I would shrink ada0p1 down to 128K (size of gptzfsboot = 88K now) and
place efi partition (~800K) on free space between new p1 and p2. No need to
touch swap partition.
>
> Yes, this is almost exactly what I have done on a machine that was
> originally installed with gptzfsboot on the first partition, which was
> 512K. Since all the partitions on this SSD were aligned to 1M, I
> reduced the size of the first partition to 224K, freeing up a hole of
> exactly 800K for an EFI partition:
>
> => 40 976773088 ada0 GPT (466G)
> 40 2008 - free - (1.0M)
> 2048 448 1 freebsd-boot (224K)
> 2496 1600 4 efi (800K)
> 4096 33554432 2 freebsd-swap (16G)
> 33558528 943214592 3 freebsd-zfs (450G)
> 976773120 8 - free - (4.0K)
>
> Then I wrote the preformatted boot1.efifat image to it, using: gpart
> bootcode -p /boot/boot1.efifat -i 4 ada0. You can also use dd of
> course, but I prefer using gpart for these kinds of manipulations.
>
> This way, you can choose between booting in old school BIOS mode, or
> UEFI mode. If the UEFI mode works flawlessly, you can always decide
> later to dump the freebsd-boot partition, and use only an EFI partition.
>
> -Dimitry
>
> P.S.: The only thing that triggers my OCD here is that the EFI partition
> has index 4, but is physically the second. But I can live with that,
> until I finally delete the freebsd-boot partition. :)
You likely want to carve out more like 50MB instead of 800k for UEFI
partition. 800k is the minimum, but it also precludes many things you
may need to do with UEFI applications down the line.
Warner