Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 16 Aug 2022 13:01:40 +0100
From:      Nuno Teixeira <eduardo@freebsd.org>
To:        Toomas Soome <tsoome@me.com>
Cc:        FreeBSD CURRENT <freebsd-current@freebsd.org>
Subject:   Re: 24.3. Updating Bootcode
Message-ID:  <CAFDf7UJrnL0RrPyto07-THmhPSBF%2BpbgqMmj%2BMmjUZpDotvjXQ@mail.gmail.com>
In-Reply-To: <62B26DE1-0E26-40BA-8647-E591E9ACEB7A@me.com>
References:  <CAFDf7UJv9QCuD27XDs2ihLiN21Rn6PeZjbJtWVOAAfHb8HHnHw@mail.gmail.com> <62B26DE1-0E26-40BA-8647-E591E9ACEB7A@me.com>

index | next in thread | previous in thread | raw e-mail

[-- Attachment #1 --]
Hi Toomas,

For better OS support, the UEFI specification (UEFI 2.8A Feb 14, page 499)
> is suggesting to use structure like:
>
> <ESP>/efi/<OS>/…
>
> And to use this suggestion, it means the UEFI Boot Manager needs to be
> configured (see efibootmgr(8)).
>
> Therefore, once you have set up OS specific setup, there is no use for
> default (<ESP>/efi/boot/…) and you need to update one or another, but not
> both.
>

FreeBSD have <ESP>/efi/freebsd/... but it's not configured in efibootmgr:

efibootmgr -v:
---
BootOrder  : 0004, 0000, 2002, 2003, 2001
Boot0004* Windows Boot Manager
HD(1,GPT,8c497825-1db2-41f8-8924-85dfd0bb7283,0x800,0x82000)/File(\EFI\Microsoft\Boot\bootmgfw.efi)
                                   da0p1:/EFI/Microsoft/Boot/bootmgfw.efi
(null)
+Boot0000* EFI Hard Drive (SAMSUNG MZVLB1T0HBLR-000L2)
PciRoot(0x0)/Pci(0x1d,0x0)/Pci(0x0,0x0)/NVMe(0x1,39-f9-b8-01-81-38-25-00)/HD(1,GPT,73acd1b2-de41-11eb-8156-002b67dfc673,0x28,0x82000)
 Boot2002* EFI DVD/CDROM
 Boot2003* EFI Network
 Boot2001* EFI USB Device
---
so boot is definitely using <ESP>/efi/boot/bootx64.efi @Boot0000

I think I can create a new boot:
---
efibootmgr -a -c -l /boot/efi/efi/freebsd/loader.efi -L FreeBSD-14
(and make it active)
efibootmgr -a -b NNNN
---
and create other for loader.efi.old in case of problems.

In this case I will need only update <ESP>/efi/freebsd/loader.efi.

Q: for what has been said in mailing, boot is compiled in /usr/src/stand,
isn't a good idea that when it install new boot it backup old boot like
/boot/kernel -> /boot/kernel.old?

Thanks,

-- 
Nuno Teixeira
FreeBSD Committer (ports)

[-- Attachment #2 --]
<div dir="ltr"><div class="gmail_quote"><div>Hi Toomas,</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
For better OS support, the UEFI specification (UEFI 2.8A Feb 14, page 499) is suggesting to use structure like:<br>
<br>
&lt;ESP&gt;/efi/&lt;OS&gt;/…<br>
<br>
And to use this suggestion, it means the UEFI Boot Manager needs to be configured (see efibootmgr(8)).<br>
<br>
Therefore, once you have set up OS specific setup, there is no use for default (&lt;ESP&gt;/efi/boot/…) and you need to update one or another, but not both.<br></blockquote></div><div><br></div><div>FreeBSD have &lt;ESP&gt;/efi/freebsd/... but it&#39;s not configured in efibootmgr:</div><div><br></div><div>efibootmgr -v:</div><div>---</div><div>BootOrder  : 0004, 0000, 2002, 2003, 2001</div><div>Boot0004* Windows Boot Manager HD(1,GPT,8c497825-1db2-41f8-8924-85dfd0bb7283,0x800,0x82000)/File(\EFI\Microsoft\Boot\bootmgfw.efi)<br>                                   da0p1:/EFI/Microsoft/Boot/bootmgfw.efi (null)<br>+Boot0000* EFI Hard Drive (SAMSUNG MZVLB1T0HBLR-000L2) PciRoot(0x0)/Pci(0x1d,0x0)/Pci(0x0,0x0)/NVMe(0x1,39-f9-b8-01-81-38-25-00)/HD(1,GPT,73acd1b2-de41-11eb-8156-002b67dfc673,0x28,0x82000)</div><div> Boot2002* EFI DVD/CDROM<br> Boot2003* EFI Network<br> Boot2001* EFI USB Device</div><div>---</div><div>so boot is definitely using &lt;ESP&gt;/efi/boot/bootx64.efi <a class="gmail_plusreply" id="plusReplyChip-0">@Boot0000</a><br></div><div><br></div><div>I think I can create a new boot:</div><div>---</div><div>efibootmgr -a -c -l /boot/efi/efi/freebsd/loader.efi -L FreeBSD-14</div><div>(and make it active)</div><div>efibootmgr -a -b NNNN</div><div>---</div><div>and create other for loader.efi.old in case of problems.</div><div><br></div><div>In this case I will need only update &lt;ESP&gt;/efi/freebsd/loader.efi.<br></div><div><br></div><div>Q: for what has been said in mailing, boot is compiled in /usr/src/stand, isn&#39;t a good idea that when it install new boot it backup old boot like /boot/kernel -&gt; /boot/kernel.old?</div><div><br></div><div>Thanks,<br></div><div><br></div><div>-- </div><div dir="ltr" class="gmail_signature"><div dir="ltr"><span style="color:rgb(102,102,102)">Nuno Teixeira<br>FreeBSD Committer (ports)</span></div></div></div>
help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAFDf7UJrnL0RrPyto07-THmhPSBF%2BpbgqMmj%2BMmjUZpDotvjXQ>