Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 4 May 2018 07:56:58 -0500
From:      Mike Gerdts <mike.gerdts@joyent.com>
To:        Michael Reifenberger <mike@reifenberger.com>
Cc:        Jason Tubnor <jason@tubnor.net>, freebsd-virtualization@freebsd.org
Subject:   Re: Centos7 uefi boot problem with bhyve after update
Message-ID:  <CAAxFYUEmnVYEzbr8gkpMZ%2BwQyB85=sOREkOUkVh3oY7tk4hv9w@mail.gmail.com>
In-Reply-To: <20180504122635.Horde.BLpo7EULCvCbMZLSMErcHAh@app.eeeit.de>
References:  <20180502095855.Horde.pnF1J3CvBGrJMXFBiwHibZM@app.eeeit.de> <CACLnyC%2BZKqMY4Kxu%2B6Rmo22ORUge%2Bk1H0eHn2YKgpKm9AVA01A@mail.gmail.com> <20180504122635.Horde.BLpo7EULCvCbMZLSMErcHAh@app.eeeit.de>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, May 4, 2018 at 7:26 AM, Michael Reifenberger <mike@reifenberger.com>
wrote:

> The kernel version shouldn't matter that much because the error occures
> before the kernel gets loaded.
> It's after /EFI/BOOT/BOOTX64.EFI got loaded and before
> /EFI/centos/grubx64.efi gets loaded
> because of not beeing found...
>

On SmartOS I've found that fresh installations of CentOS 7 put all of the
required files to actually boot the OS in the /EFI/centos directory leaving
the /EFI/BOOT directory mostly empty.  The image at https://ibb.co/jFwDES
matches this symptom.  This can be fixed (hacked around) via the EFI shell.

The following is pieced together from scrollback (that was kinda wonky due
to size issues) from a serial console.

Shell> FS0:
FS0:\> cd efi
FS0:\efi\> cd BOOT
FS0:\efi\BOOT\> dir
Directory of: FS0:\efi\BOOT\
05/03/2018  19:29 <DIR>         4,096  .
05/03/2018  19:29 <DIR>         4,096  ..
08/31/2017  21:30           1,296,176  BOOTX64.EFI
08/31/2017  21:30              79,048  fbx64.efi
          2 File(s)   1,375,224 bytes
          2 Dir(s)
FS0:\efi\BOOT\> cd ..\centos
FS0:\efi\centos\> dir
Directory of: FS0:\efi\centos\
05/03/2018  19:27 <DIR>         4,096  .
05/03/2018  19:27 <DIR>         4,096  ..
05/03/2018  19:29 <DIR>         4,096  fonts
08/31/2017  21:30           1,297,120  shimx64-centos.efi
08/17/2017  18:00           1,052,032  grubx64.efi
08/31/2017  21:30                 134  BOOT.CSV
08/31/2017  21:30                 134  BOOTX64.CSV
08/31/2017  21:30           1,262,816  mmx64.efi
08/31/2017  21:30           1,296,176  shim.efi
05/03/2018  19:33               1,024  grubenv
08/31/2017  21:30           1,296,176  shimx64.efi
05/03/2018  19:33               4,231  grub.cfg
          9 File(s)   6,209,843 bytes
          3 Dir(s)
FS0:\efi\centos\> cp -r * ..\boot
Copying FS0:\EFI\centos\fonts -> FS0:\EFI\BOOT\fonts
...
Copying FS0:\EFI\centos\grub.cfg -> FS0:\EFI\BOOT\grub.cfg
- [ok]
FS0:\efi\centos\> reset


I've not curled up with the EFI spec for a while and forget how it is
supposed to choose which directory to read the various files from.  That
is, the fault here could be that of bootrom not reading the files it should
or the guest OS not putting the right thing in \EFI\BOOT to get it to look
in \EFI\centos.

Mike



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAAxFYUEmnVYEzbr8gkpMZ%2BwQyB85=sOREkOUkVh3oY7tk4hv9w>