How to debug ZFS boot on UEFI?

doug doug at
Mon Jul 30 01:14:11 UTC 2018

On Sun, 29 Jul 2018, Grzegorz Junka wrote:

> Hi,
> I've followed (more or less) this thread:
> I have two disks nvd0 and nvd1 with three partitions on each: efi, 
> freebsd-swap and freebsd-zfs. I've created the ZFS pool and installed FreeBSD 
> manually (because on nvd1 I have also a few partitions used by Windows). On 
> nvd1p1 I've created the hierarchy of files as outlined in the post:
> efi/boot/BOOTx64.efi (copied from /boot/boot1.efi
> boot/loader.rc (with the content as outlined in the post)
> In UEFI boot menu I can see all partitions (Windows, UEFI shell, UEFI USB 
> stick for 11.2, and the one I created). Booting from any partition works 
> apart from the one I created - when that partition is selected UEFI shows a 
> black screen for a second and then goes back to the boot menu.
> How can I debug what's wrong?
> Thanks
> GrzegorzJ

Did you try verbose boot? If you get nothing from that as far as I can tell that 
means the code in the firmware did not find any thing to transfer control to. I 
could never get beyond that point.

When I was trying to do this on an HP. I followed Warren Block's script on doing 
this with gpart and shell commands. The script:

gives a clear definition of what the disk layout should be and what the contents 
of the EFI partition should be. Checking that against what you have would be a 
good first step.

I did a dual boot on my laptop following this script:

I never got FreeBSD to boot on the laptop without using refind. If you do a 
windows install of refind that is the first thing invoked. That might solve your 
problem. For me it just worked after I finally got all the pieces in place

I know this did not answer your question, if this get a response from any UEFI 
experts, look forward to that, the best I can do is to share my experience.

More information about the freebsd-questions mailing list