Date: Wed, 24 Oct 2018 10:55:17 +0300 From: Toomas Soome <tsoome@me.com> To: Harry Newton <hn@yewbarrow.net> Cc: Kyle Evans <kevans@freebsd.org>, FreeBSD Current <freebsd-current@freebsd.org> Subject: Re: UEFI boot hangs after loader Message-ID: <53C30F4F-07A3-4983-88A6-7A762008E109@me.com> In-Reply-To: <CAKAm69E8mCEwZnWrHLRDQeJpN9KZyyayjZLq6Kg7jU2Zpe_N-Q@mail.gmail.com> References: <CAKAm69Fw%2BX3Xik6rUcEOrr0TtxypEc2D05%2B5g9JGh=N2VxZGpA@mail.gmail.com> <282E6F72-6573-4F0E-81AB-25110855EBB7@me.com> <CAKAm69EMraV0KaPEbsxTcEpwFjpNZtW-sc42mmSq=9vv%2BiyGzQ@mail.gmail.com> <2950121D-C985-4F2E-A512-FB73CFDF48BC@me.com> <CAKAm69Gd1yq0Lss2nByjkkfiTPCAW6wvaKPF8LVqbw%2BvbEnxUQ@mail.gmail.com> <4457A5DC-A577-4782-B1E8-306236908D5D@me.com> <CAKAm69EF98FZnh0KHkArPGX=_7OZT369kQr3J5YigE-0mOsgqA@mail.gmail.com> <B5749B46-02E5-4B48-858B-EE2743281154@me.com> <CAKAm69HrTh%2BibMi8GHV9CpUa2=2jsof2AXk5LeOE0TwRxTWc3w@mail.gmail.com> <CAKAm69FEOCWwEPr3ZLVOYHuVyZYNACbXhzhwH_4VgC0DV9B7jw@mail.gmail.com> <CACNAnaGrk9tN0Pg0HeODRuSnqGCaSZSBQtvV6JscVh%2B7hBCN%2BQ@mail.gmail.com> <CAKAm69E8mCEwZnWrHLRDQeJpN9KZyyayjZLq6Kg7jU2Zpe_N-Q@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> On 24 Oct 2018, at 10:13, Harry Newton <hn@yewbarrow.net> wrote: >=20 > Booted with the installer image makes efibootmgr to work as you said: >=20 > gryphon# efibootmgr -v > BootCurrent: 0002 > Timeout : 2 seconds=20 > BootOrder : 0001, 0002=20 > Boot0001* UEFI OS = HD(1,GPT,b19ccd5d-7c6a-11e7-ae3e-28b2bde107e4,0x28,0x640)/File(\EFI\BOOT\B= OOTX64.EFI) ada0p1:/EFI/BOOT/BOOTX64.EFI (null)=20 >=20 > However it (efibootmgr) hangs and doesn't return to the shell, though = it is interruptible with ^C. >=20 > The partition listed against Boot0001 is my efi partition. My guess is that the loader.efi is hung by exactly the same reason - = there is some bad (unexpected) value, also the printed out (null) hints = about weirdness there, because we normally get (null) when NULL pointer = was passed to printf(). So either we should debug the loader.efi or = efibootmgr to identify why it is hung and fix the code to avoid it.=20 rgds, toomas >=20 > /H >=20 > On 23 October 2018 at 22:51, Kyle Evans <kevans@freebsd.org = <mailto:kevans@freebsd.org>> wrote: > Hi, >=20 > I suspect 4th vs. lua has no impact here, given the output shown -- > can you throw one of the installer images [0] on some removable media > and give that a shot for booting? If that works, we can explore UEFI > variables from there. >=20 > efibootmgr will only work on a successful UEFI boot, unfortunately- if > we didn't make uefi loader -> kernel transition, then we don't have > access to runtime services. >=20 > Thanks, >=20 > Kyle Evans >=20 > [0] = https://download.freebsd.org/ftp/releases/amd64/amd64/ISO-IMAGES/12.0/ = <https://download.freebsd.org/ftp/releases/amd64/amd64/ISO-IMAGES/12.0/> >=20 > On Tue, Oct 23, 2018 at 4:23 PM Harry Newton <hn@yewbarrow.net = <mailto:hn@yewbarrow.net>> wrote: > > > > I set LOADER_DEFAULT_INTERP=3D4th and went in /usr/src/stand and = re-made the > > binaries in /boot but this doesn't solve the problem. It did copy > > /boot/loader_4th.efi to /boot/loader.efi which is (according to = uefi(8) > > which is what is called from /boot/boot1.efi and which contains the = strings > > I see on the console before the hang. But it must then call / read > > something else and I don't think it can find it. Not sure why it = doesn't > > produce an error message. I *think* it may be something to do with = EFI > > variables, but as efibootmgr doesn't work I can't explore this, = despite > > efirt being in the kernel. > > > > Suggestions received welcomed, and new suggestions / leads to follow = also > > very much welcomed. > > > > /H > > > > > > On 23 October 2018 at 21:33, Harry Newton <hn@yewbarrow.net = <mailto:hn@yewbarrow.net>> wrote: > > > > > Right ... I've the binaries in /boot, freshly made. This might be = a silly > > > question ... do I not need to copy them (or dd the boot1.efifat = image) to > > > the EFI partition ? > > > > > > /H > > > > > > On 23 October 2018 at 21:30, Toomas Soome <tsoome@me.com = <mailto:tsoome@me.com>> wrote: > > > > > >> you should have the binaries in boot - just ln (or copy) one to = loader.efi > > >> > > >> rgds, > > >> toomas > > >> > > >> > > >> On 23 Oct 2018, at 23:22, Harry Newton <hn@yewbarrow.net = <mailto:hn@yewbarrow.net>> wrote: > > >> > > >> Yes ... so as everything is built, can I just alter = LOADER_DEFAULT_INTERP > > >> in /etc/make.conf and then reinstall just the loader and boot = parts onto > > >> the UEFI partition ? If so, how ? > > >> > > >> > > >> On 23 October 2018 at 21:17, Toomas Soome <tsoome@me.com = <mailto:tsoome@me.com>> wrote: > > >> > > >>> ok, in that case I=E2=80=99d suggest to test out if forth based = one is still > > >>> working - at least you can get the bootable system. And then = there is a > > >>> chance to debug the lua version too (note it should be possible = to chain > > >>> /boot/loader_lua.efi). > > >>> > > >>> rgds, > > >>> toomas > > >>> > > >>> > On 23 Oct 2018, at 23:08, Harry Newton <hn@yewbarrow.net = <mailto:hn@yewbarrow.net>> wrote: > > >>> > > > >>> > So it's got FORTH in it, but my loader is lua based, and also = doesn't > > >>> > appear to read loader.rc. > > >>> > > > >>> > /H > > >>> > > > >>> > On 23 October 2018 at 21:03, Toomas Soome <tsoome@me.com = <mailto:tsoome@me.com>> wrote: > > >>> > > > >>> >> hm. in that case, whats the content of /boot/loader.rc ? > > >>> >> > > >>> >> rgds, > > >>> >> toomas > > >>> >> > > >>> >> > > >>> >> On 23 Oct 2018, at 23:01, Harry Newton <hn@yewbarrow.net = <mailto:hn@yewbarrow.net>> wrote: > > >>> >> > > >>> >> If boot menu is the screen where you get the options for = various > > >>> kernels > > >>> >> and the picture of the daemon head, no. It stops at the = point in my > > >>> email > > >>> >> =E2=80=94 though not as I said just before the kernel is = loaded but in point > > >>> of > > >>> >> fact before the menu. > > >>> >> > > >>> >> I've also rebuilt the kernel and still can't use efibootmgr = which is > > >>> >> puzzling me. > > >>> >> > > >>> >> /H > > >>> >> > > >>> >> > > >>> >> On 23 October 2018 at 20:56, Toomas Soome <tsoome@me.com = <mailto:tsoome@me.com>> wrote: > > >>> >> > > >>> >>> Do you get boot menu? if so, press esc to get to ok prompt, = then type > > >>> >>> start - if its bootfort based loader, it will load the = kernel and > > >>> modules. > > >>> >>> lsmod will then list the loaded files. > > >>> >>> > > >>> >>> If the loader prompt is still usable, then next command = would be: > > >>> boot > > >>> >>> > > >>> >>> rgds, > > >>> >>> toomas > > >>> >>> > > >>> >>>> On 23 Oct 2018, at 20:45, Harry Newton <hn@yewbarrow.net = <mailto:hn@yewbarrow.net>> wrote: > > >>> >>>> > > >>> >>>> Just upgraded my Asus UX303L (amd64) from 11-STABLE to = 12.0-BETA1 > > >>> >>> r339529 > > >>> >>>> by source. Have a problem with booting which hangs after: > > >>> >>>> > > >>> >>>>>> FreeBSD EFI boot block > > >>> >>>> Loader path: /boot/loader.efi > > >>> >>>> > > >>> >>>> Initializing modules: ZFS UFS > > >>> >>>> Probing 5 block devices ... done > > >>> >>>> ZFS found the following pools: zroot > > >>> >>>> UFS found no partitions > > >>> >>>> Consoles: EFI console > > >>> >>>> FreeBSD/amd64 EFI loader, Revision 1.1 > > >>> >>>> > > >>> >>>> Command line arguments: loader.efi > > >>> >>>> EFI version 2.31 > > >>> >>>> EFI Firmware: American Megatrends (rev 4.654) > > >>> >>>> Console: efi(0) > > >>> >>>> Load Path: HD(4, GPT [ ... ] > > >>> >>>> Load Device: Pci Root [ ... ] > > >>> >>>> Boot Current: 0001 > > >>> >>>> Boot Order: 0001 [x] > > >>> >>>> Boot Info Path: HS(1, GPT, [ ... ] = /\EFI\BOOT\BOOTX64.EFI > > >>> >>>> - > > >>> >>>> > > >>> >>>> So it gets into loader.efi which runs but stops I think = just before > > >>> >>> loading > > >>> >>>> the kernel. Partitions: > > >>> >>>> > > >>> >>>> =3D> 40 250069600 ada0 GPT (119G) > > >>> >>>> 40 1600 1 efi (800K) > > >>> >>>> 1640 1024 2 freebsd-boot (512K) > > >>> >>>> 2664 1432 - free - (716K) > > >>> >>>> 4096 4194304 3 freebsd-swap (2.0G) > > >>> >>>> 4198400 245870592 4 freebsd-zfs (117G) > > >>> >>>> 250068992 648 - free - (324K) > > >>> >>>> > > >>> >>>> and the EFI partition is FAT 12. > > >>> >>>> > > >>> >>>> I can't provide (at the moment) any output from efibootmgr: > > >>> >>>> > > >>> >>>> root@gryphon:~ # efibootmgr -v > > >>> >>>> efibootmgr: efi variables not supported on this system. = root? > > >>> kldload > > >>> >>> efirt? > > >>> >>>> root@gryphon:~ # kldload efirt > > >>> >>>> kldload: can't load efirt: module already loaded or in = kernel > > >>> >>>> > > >>> >>>> which I don't understand. > > >>> >>>> > > >>> >>>> I'm going to rebuild the kernel (currently GENERIC) and see = if that > > >>> >>> allows > > >>> >>>> me to load efirt / use efibootmgr. > > >>> >>>> > > >>> >>>> In the meantime, I should be very grateful for any advice. > > >>> >>>> > > >>> >>>> ( Currently booting using a 11-RELEASE memstick image and = dropping > > >>> into > > >>> >>> its > > >>> >>>> loader to get to the installed 12-STABLE ). > > >>> >>>> > > >>> >>>> /Harry > > >>> >>>> _______________________________________________ > > >>> >>>> freebsd-current@freebsd.org = <mailto:freebsd-current@freebsd.org> mailing list > > >>> >>>> https://lists.freebsd.org/mailman/listinfo/freebsd-current = <https://lists.freebsd.org/mailman/listinfo/freebsd-current> > > >>> >>>> To unsubscribe, send any mail to = "freebsd-current-unsubscribe@f > > >>> >>> reebsd.org <http://reebsd.org/>" > > >>> >>> > > >>> >>> > > >>> >> > > >>> >> > > >>> >> -- > > >>> >> Harry Newton > > >>> >> > > >>> >> > > >>> >> > > >>> > > > >>> > > > >>> > -- > > >>> > Harry Newton > > >>> > _______________________________________________ > > >>> > freebsd-current@freebsd.org = <mailto:freebsd-current@freebsd.org> mailing list > > >>> > https://lists.freebsd.org/mailman/listinfo/freebsd-current = <https://lists.freebsd.org/mailman/listinfo/freebsd-current> > > >>> > To unsubscribe, send any mail to = "freebsd-current-unsubscribe@f > > >>> reebsd.org <http://reebsd.org/>" > > >>> > > >>> > > >> > > >> > > >> -- > > >> Harry Newton > > >> > > >> > > >> > > > > > > > > > -- > > > Harry Newton > > > > > > > > > > > -- > > Harry Newton > > _______________________________________________ > > freebsd-current@freebsd.org <mailto:freebsd-current@freebsd.org> = mailing list > > https://lists.freebsd.org/mailman/listinfo/freebsd-current = <https://lists.freebsd.org/mailman/listinfo/freebsd-current> > > To unsubscribe, send any mail to = "freebsd-current-unsubscribe@freebsd.org = <mailto:freebsd-current-unsubscribe@freebsd.org>" >=20 >=20 >=20 > --=20 > Harry Newton
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?53C30F4F-07A3-4983-88A6-7A762008E109>