Re: GPT boot has less features than legacy MBR-based one (Was: UEFI, loader.efi and /boot.config)

From: Warner Losh <imp_at_bsdimp.com>
Date: Sat, 19 Jan 2019 09:16:14 -0700
On Sat, Jan 19, 2019 at 9:00 AM Rodney W. Grimes <
freebsd-rwg_at_pdx.rh.cn85.dnsmgr.net> wrote:

> >
> > On January 19, 2019 at 2:52:28 AM, Lev Serebryakov (lev_at_freebsd.org
> (mailto:lev_at_freebsd.org)) wrote:
> >
> > > I have never seen such item in BIOS Setup. I've checked two MoBos now
> (one is
> > > Supermicro X9something and other is brand-new Goldmont-based Chinese
> MiniPC
> > > like Intel NUK): both have one knob in setup about boot type
> > > (Legacy/UEFI/Auto) and if UEFI is selected, Supermicro MoBo (but not
> Chinese
> > > one) could be booted to "UEFI Console" which is not documented
> anywhere.
> > >
> > > Ok, I've checked my desktop Asus Z170-A, but it is graphical and I
> could
> > > not find or understand anything in this home-rown UI with crazy-fast
> mouse.
> > >
> >
> > On ASUS systems you normally press F8 during POST to bring up the boot
> menu, and F11 on Supermicro systems.
>
> ASUS should learn to put that stuff on screen... like everyone else.
> I've been hitting the delete and going to the bios/boot tap which
> also has a boot selection screen on one of my machines because I
> did not know F8 existed.
>

I've been generally reluctant to add old-style boot0 selection to UEFI
stuff. The BIOS already does it, so we don't need to. I've not needed it at
all.

However, we start the boot in lua. We already allow an interruption of
loader.efi, so it would be super easy (assuming we got the lua bindings
right) to implement something that would show you all the BootXXXX envs and
let you select one to boot instead. We already have the ability to
interrupt the boot loader. It would also be trivial to implement a 'efiboot
XXXX' command to give that to you in cli mode. Both would set BootNext to
XXXX and exit. We already have a menu, we could just add it to that. This
would solve the hassles people are having with their BIOS (either because
it's incomplete or hides the functionality too well) and would obviate the
need to make boot1.efi do the selection (which has issues of its own due to
boot1's limited scope).

The only drawback here is that we'd not be able to create new boot envs in
the loader, or you'd need to create a new one if you haven't yet run
efibootmgr(8), but if that's really an issue, someone will write code to
cope.

Warner
Received on Sat Jan 19 2019 - 15:16:27 UTC

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