Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 23 Oct 2020 08:40:38 +0200
From:      Jan Beich <jbeich@FreeBSD.org>
To:        Toomas Soome <tsoome@me.com>
Cc:        freebsd-current@freebsd.org
Subject:   Re: uefi(8) fails to boot from ZFS with compression=zstd
Message-ID:  <o8kt-5tsp-wny@FreeBSD.org>
References:  <o8kt-wvgo-wny@FreeBSD.org> <986E5318-5253-4CDD-ADEB-1DD009CCE759@me.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Toomas Soome <tsoome@me.com> writes:

>
>> On 23. Oct 2020, at 05:02, Jan Beich <jbeich@freebsd.org> wrote:
>>=20
>> =EF=BB=BFAfter r366657 (currently, on r366953) I've tried to boot from a
>> compression=3Dzstd dataset but it failed to reach loader(8), see below.
>> However, switching to CSM path (boot1.efi -> gptzfsboot) makes it work.
>>=20
>> Am I missing something?
[...]
> Does it boot when you copy loader.efi to bootx64.efi?

Yes, skipping boot1.efi works fine. Luckily, my gptzfsboot + loader.efi
still fit into 1Mb I've reserved for boot partitions.

$ gpart show nda0
=3D>        40  1000215136  nda0  GPT  (477G)
          40         320     1  freebsd-boot  (160K)
         360        1688     2  efi  (844K)
        2048  1000213120     3  freebsd-zfs  (477G)
  1000215168           8        - free -  (4.0K)

$ sh /usr/share/examples/bhyve/vmrun.sh -ATE -d /dev/nda0 -d /dev/nda1 host=
-freebsd
Launching virtual machine "host-freebsd" ...
fbuf frame buffer base: 0x827800000 [sz 16777216]
Consoles: EFI console
    Reading loader env vars from /efi/freebsd/loader.env
Setting currdev to disk0p2:
FreeBSD/amd64 EFI loader, Revision 1.1
(Thu Oct 22 23:48:55 UTC 2020 foo@bar)

   Command line arguments: loader.efi
   Image base: 0x1e907000
   EFI version: 2.40
   EFI Firmware: BHYVE (rev 1.00)
   Console: efi (0x20001000)
   Load Path: \EFI\BOOT\BOOTX64.EFI
   Load Device: PciRoot(0x0)/Pci(0x3,0x0)/Sata(0x0,0x0,0x0)/HD(2,GPT,<REDAC=
TED>,0x168,0x698)
   BootCurrent: 0000
   BootOrder: 0000[*] 0001 0002 0003
   BootInfo Path: PciRoot(0x0)/Pci(0x3,0x0)/Sata(0x0,0x0,0x0)
Ignoring Boot0000: Only one DP found
Trying ESP: PciRoot(0x0)/Pci(0x3,0x0)/Sata(0x0,0x0,0x0)/HD(2,GPT,<REDACTED>=
,0x168,0x698)
Setting currdev to disk0p2:
Trying: PciRoot(0x0)/Pci(0x3,0x0)/Sata(0x0,0x0,0x0)/HD(1,GPT,<REDACTED>,0x2=
8,0x140)
Setting currdev to disk0p1:
Trying: PciRoot(0x0)/Pci(0x3,0x0)/Sata(0x0,0x0,0x0)/HD(3,GPT,<REDACTED>,0x8=
00,0x3B9E0A80)
Setting currdev to zfs:tank/ROOT/freebsd-zstd:
Loading /boot/defaults/loader.conf
Loading /boot/defaults/loader.conf
Loading /boot/device.hints
Loading /boot/loader.conf
Loading /boot/loader.conf.local
/
-  ______               ____   _____ _____
  |  ____|             |  _ \ / ____|  __ \
  | |___ _ __ ___  ___ | |_) | (___ | |  | |
  |  ___| '__/ _ \/ _ \|  _ < \___ \| |  | |
  | |   | | |  __/  __/| |_) |____) | |__| |
  | |   | | |    |    ||     |      |      |
  |_|   |_|  \___|\___||____/|_____/|_____/
                                                 ```                       =
 `
 =E2=94=8C=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=
=E2=94=80=E2=94=80=E2=94=80=E2=94=80Welcome to FreeBSD=E2=94=80=E2=94=80=E2=
=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=
=80=E2=94=80=E2=94=90    s` `.....---.......--.```   -/
 =E2=94=82                                         =E2=94=82    +o   .--`  =
       /y:`      +.
 =E2=94=82  1. Boot Multi user [Enter]             =E2=94=82     yo`:.     =
       :o      `+-
 =E2=94=82  2. Boot Single user                    =E2=94=82      y/       =
        -/`   -o/
 =E2=94=82  3. Escape to loader prompt             =E2=94=82     .-        =
          ::/sy+:.
 =E2=94=82  4. Reboot                              =E2=94=82     /         =
            `--  /
 =E2=94=82  5. Cons: Dual (Serial primary)         =E2=94=82    `:         =
                 :`
 =E2=94=82                                         =E2=94=82    `:         =
                 :`
 =E2=94=82  Options:                               =E2=94=82     /         =
                 /
 =E2=94=82  6. Kernel: default/kernel (1 of 2)     =E2=94=82     .-        =
                -.
 =E2=94=82  7. Boot Options                        =E2=94=82      --       =
               -.
 =E2=94=82  8. Boot Environments                   =E2=94=82       `:`     =
             `:`
 =E2=94=82                                         =E2=94=82         .--   =
          `--.
 =E2=94=94=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=
=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=
=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=
=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=
=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=94=80=E2=
=94=80=E2=94=98            .---.....----.


Loading kernel...
/boot/kernel/kernel text=3D0x10c7c8 text=3D0x99a088 text=3D0x1a75e4 data=3D=
0x140 data=3D0x131aa4+0x4cd55c syms=3D[0x8+0x10f4d0+0x8+0x112349]
Loading configured modules...
/boot/firmware/intel-ucode.bin size=3D0x303800
/etc/hostid size=3D0x25
/boot/entropy size=3D0x1000
/boot/kernel/ichwd.ko size 0x8558 at 0x1b27000
Start @ 0xffffffff8030d000 ...
EFI framebuffer information:
addr, size     0xc1000000, 0x1000000
dimensions     1024 x 768
stride         1024
masks          0x00ff0000, 0x0000ff00, 0x000000ff, 0xff000000



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?o8kt-5tsp-wny>