Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 21 Nov 2024 13:29:39 +0000
From:      bugzilla-noreply@freebsd.org
To:        bugs@FreeBSD.org
Subject:   [Bug 282891] gptboot and loader.efi can't work with geli encrypted virtio_block devices
Message-ID:  <bug-282891-227@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D282891

            Bug ID: 282891
           Summary: gptboot and loader.efi can't work with geli encrypted
                    virtio_block devices
           Product: Base System
           Version: 14.1-STABLE
          Hardware: amd64
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: kern
          Assignee: bugs@FreeBSD.org
          Reporter: ant_mail@inbox.ru

After series of experiments I came to conclusion that gptboot and loader.efi
can't detect and work with geli encrypted virtio_block devices (vtbdX).

Steps to reproduce.=20

Run QEMU VM machine as:
..
 -drive file=3D"freebsd-guest.qcow2",if=3Dvirtio,index=3D0,media=3Ddisk \
 -drive media=3Dcdrom,file=3Ddvdboot.iso \
...

Create geli-encrypted system according to
https://forums.freebsd.org/threads/is-full-disk-encryption-with-ufs-possibl=
e.92399/#post-643920

Try to boot VM without DVD and you'll get:
---
Booting from Hard Disk...
gptboot: No /boot/loader on 0:ad(0p3)
gptboot: No /boot/kernel/kernel on 0:ad(0p3)

FreeBSD/x86 boot
Default: 0:ad(0p3)/boot/kernel/kernel
boot:
---

Then try to boot via UEFI using=20
...
 -drive if=3Dpflash,format=3Draw,unit=3D0,file=3Dedk2-x86_64-code.fd,readon=
ly=3Don \
 -drive if=3Dpflash,format=3Draw,unit=3D1,file=3Dfbsdguest-vars.fd \
 -drive file=3D"freebsd-guest.qcow2",if=3Dvirtio,index=3D0,media=3Ddisk \
...

You'll  get:
---
Setting currdev to disk0p2:
FreeBSD/amd64 EFI loader, Revision 3.0

   Command line arguments: loader.efi
   Image base: 0x1dd33000
   EFI version: 2.70
   EFI Firmware: EDK II (rev 1.00)
   Console: efi (0x1000)
   Load Path: \BOOT\BOOTX64.EFI
   Load Device:
PciRoot(0x0)/Pci(0x2,0x0)/HD(2,GPT,96DDAD28-A7EA-11EF-88EF-B388856C1CCC,0x4=
28,0x82000)
   BootCurrent: 0008
   BootOrder: 0007 0001 0002 0003 0004 0005 0006 0000
   BootInfo Path:
PciRoot(0x0)/Pci(0x2,0x0)/HD(2,GPT,96DDAD28-A7EA-11EF-88EF-B388856C1CCC,0x4=
28,0x82000)/\BOOT\BOOTX64.EFI
Ignoring Boot0008: Only one DP found
Trying ESP:
PciRoot(0x0)/Pci(0x2,0x0)/HD(2,GPT,96DDAD28-A7EA-11EF-88EF-B388856C1CCC,0x4=
28,0x82000)
Setting currdev to disk0p2:
Trying:
PciRoot(0x0)/Pci(0x2,0x0)/HD(1,GPT,42FF997F-A7EA-11EF-88EF-B388856C1CCC,0x2=
8,0x400)
Setting currdev to disk0p1:
Trying:
PciRoot(0x0)/Pci(0x2,0x0)/HD(3,GPT,CAB6C2BE-A7EA-11EF-88EF-B388856C1CCC,0x8=
2428,0x1C00000)
Setting currdev to disk0p3:
Trying:
PciRoot(0x0)/Pci(0x2,0x0)/HD(4,GPT,D2D4B5C3-A7EA-11EF-88EF-B388856C1CCC,0x1=
C82428,0x17DBB0)
Setting currdev to disk0p4:
Failed to find bootable partition
ERROR: cannot open /boot/lua/loader.lua: no such file or directory.
---


Repeat the steps replacing 'virtio' to 'ide':

 -drive file=3D"freebsd-guest.qcow2",if=3Dide,index=3D0,media=3Ddisk=20

and things will work.

QEMU is v9.0.0-12054.

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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-282891-227>