[Bug 199729] UEFI, boot1.efi looks for loader.efi in the wrong partition. (+ possible fix)

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Mon Apr 27 10:21:22 UTC 2015


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=199729

            Bug ID: 199729
           Summary: UEFI, boot1.efi looks for loader.efi in the wrong
                    partition. (+ possible fix)
           Product: Base System
           Version: 11.0-CURRENT
          Hardware: amd64
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: kern
          Assignee: freebsd-bugs at FreeBSD.org
          Reporter: bas at nimrev.com

I've run into the problem where I'm no longer able to boot a FreeBSD
installation USB with UEFI.

I get the following message:

>> FreeBSD EFI boot block
   Loader path: /boot/loader.efi
File /boot/loader.efi not found
panic: Load failed


I have a Macbook Pro (late 2013) with my SSD partitioned to have room for both
OS X and FreeBSD. This means that there is a UFS partition on the SSD in my
Macbook.

I've possibly traced the problem down to boot1.c. Inside the efi_main function,
line 157 there a loop that loops through all the device partitions found by the
UEFI firmware. After it finds a valid UFS partition it will try to find
/boot/loader.efi.

It seems to loop though the partitions on my SSD first, finds a valid UFS
partition, and tries to read loader.efi, which does not exist. Instead it
should find the loader.efi on the USB stick, but it doesn't.

Problem is solved when removing the UFS partition from the SSD.


I suppose this problem could be reproduced by creating a disk with two UFS
partitions, an empty UFS partition before the partition containing loader.efi.


Possible solutions could be:
- Loop through the partitions on the disk it's booting from first.
- Don't panic when the first partition doesn't have loader.efi, check the other
UFS partitions also

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list