From owner-freebsd-current@freebsd.org Sun Oct 28 17:45:27 2018 Return-Path: Delivered-To: freebsd-current@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 062C110DB5A3 for ; Sun, 28 Oct 2018 17:45:27 +0000 (UTC) (envelope-from harry@yewbarrow.net) Received: from mail-yw1-xc33.google.com (mail-yw1-xc33.google.com [IPv6:2607:f8b0:4864:20::c33]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8F8558ED84 for ; Sun, 28 Oct 2018 17:45:26 +0000 (UTC) (envelope-from harry@yewbarrow.net) Received: by mail-yw1-xc33.google.com with SMTP id d126-v6so2464429ywa.5 for ; Sun, 28 Oct 2018 10:45:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yewbarrow-net.20150623.gappssmtp.com; s=20150623; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=rI4FTRf8DqnR6PMjferTAvlt/rOiEiiRDv19bGeGL5I=; b=GXk8PW6h9qSrZEYT6qwhzLvuDqa6gC+O2U6kBZEMyaZjuJZTxyFX3Y+GIIkFkyVqGv 9oTJJIvPKImz/qq12JHqe+ZnhZ8bd5Yb4tSdNK8sI9/pV93KDaSK0t45jOKCmfjCm/rH qZu+Z+vfX2Yrst94FP2wBxGoyePeWO96hiROwJK054mlRi3oFECChRsgOvA9rMeYdWGZ nxE51wYs4INfVxNojGvy5g8HWovwPQFlnfMFD+9SvQcERVhyezcVawZ7FirTyufiWNll wPCUlPK3NNRFRT+kgudwGE+RjlkS4xOorcIEK5AOIGWCfjnlSmGj73Tamw1WQHLiaLEH iN9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=rI4FTRf8DqnR6PMjferTAvlt/rOiEiiRDv19bGeGL5I=; b=cioZjCzEyeH4GiMHzjrH319Efj85GtQ9aaTt0JjF8Mmi7txi3mHoo0fo4lNVCBHLx3 HV6tAj1OE99vF7fFjztl12lgkqQkUOJRacVr+jpmaSkuGViUdR152O12CUFyfOede5sg jc9DzjcBGeE8LjuTeRJKKePyRHpz9MbtWB+BR5PzexthQSj35ooIYagYk0JZxZ/SO+6e GDJzXHmb95gU4ItZztKY95TOY1NSPRiSTbSkBhGp68ZG9ZS+0AGP4ip6hNFZZyaqoDCh RTIfC2xoahLw6dS6+/Drm1YmccZfaE0paDd3fzf8LaHglfVPpja4zI5I7daJ2EB7K8nB HiOw== X-Gm-Message-State: AGRZ1gIPdjcj3IlnaLOx8fEmT44RUH+klGtZtrxEiyKGoql2Q5xrW4Lr 96Fv9TXwXOXG/B8Fh11PUqwbuNzvMSWLXuwNZ38VtA== X-Google-Smtp-Source: AJdET5eBN2/7JBxBKAe/8t9y/N+wkMLtjKPpxvJl+OOQLUbT5v4LwH/RSCuH60fV8uDmN8YixsMDGWp8XDri0O4gqVM= X-Received: by 2002:a81:9e82:: with SMTP id v124-v6mr11217777ywg.258.1540748725536; Sun, 28 Oct 2018 10:45:25 -0700 (PDT) MIME-Version: 1.0 Sender: harry@yewbarrow.net Received: by 2002:a25:807:0:0:0:0:0 with HTTP; Sun, 28 Oct 2018 10:45:24 -0700 (PDT) In-Reply-To: References: <2950121D-C985-4F2E-A512-FB73CFDF48BC@me.com> <4457A5DC-A577-4782-B1E8-306236908D5D@me.com> <2c936e35-7bcf-95f9-f99d-60d3c9408d39@FreeBSD.org> From: Harry Newton Date: Sun, 28 Oct 2018 17:45:24 +0000 X-Google-Sender-Auth: k3TqWc599zZLWjahMRM0elglo_c Message-ID: Subject: Re: UEFI boot hangs after loader To: Warner Losh Cc: Yuri Pankov , Jung-uk Kim , Kyle Evans , Toomas Soome , FreeBSD Current Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Oct 2018 17:45:27 -0000 The patch you emailed fixed it for me ... was there something else I've missed ? On 28 October 2018 at 16:40, Warner Losh wrote: > > > On Sun, Oct 28, 2018, 10:39 AM Yuri Pankov wrote: > >> Jung-uk Kim wrote: >> > On 18. 10. 24., Warner Losh wrote: >> >> On Wed, Oct 24, 2018 at 10:33 AM Harry Newton >> wrote: >> >> >> >>> gryphon# efivar -N --hex $(efivar | grep Boot0002) >> >>> 0000: 01 00 00 00 98 00 55 00 45 00 46 00 49 00 3a 00 >> >>> 0010: 20 00 4b 00 69 00 6e 00 67 00 73 00 74 00 6f 00 >> >>> 0020: 6e 00 44 00 61 00 74 00 61 00 54 00 72 00 61 00 >> >>> 0030: 76 00 65 00 6c 00 65 00 72 00 20 00 32 00 2e 00 >> >>> 0040: 30 00 31 00 2e 00 30 00 30 00 00 00 02 01 0c 00 >> >>> 0050: d0 41 03 0a 00 00 00 00 01 01 06 00 00 14 03 05 >> >>> 0060: 06 00 03 00 04 01 2a 00 01 00 00 00 01 00 00 00 >> >>> 0070: 00 00 00 00 40 06 00 00 00 00 00 00 90 90 90 90 >> >>> 0080: 00 00 00 00 00 00 00 00 00 00 00 00 01 01 7f ff >> >>> 0090: 04 00 01 04 4e 00 ef 47 64 2d c9 3b a0 41 ac 19 >> >>> 00a0: 4d 51 d0 1b 4c e6 4b 00 69 00 6e 00 67 00 73 00 >> >>> 00b0: 74 00 6f 00 6e 00 44 00 61 00 74 00 61 00 54 00 >> >>> 00c0: 72 00 61 00 76 00 65 00 6c 00 65 00 72 00 20 00 >> >>> 00d0: 32 00 2e 00 30 00 31 00 2e 00 30 00 30 00 00 00 >> >>> 00e0: 7f ff 04 00 00 00 42 4f >> >>> gryphon# >> >>> >> >> >> >> Perfect. I'll decode this and see if I can figure out where we're >> going AFU. >> > >> > It looks familiar. >> > >> > http://docs.freebsd.org/cgi/mid.cgi?eadf5d63-a65a-338e- >> a3e0-f91b410052fa >> >> I have an output looking similar, but not exactly: >> >> 0000: 01 00 00 00 62 00 55 00 45 00 46 00 49 00 20 00 >> 0010: 4f 00 53 00 00 00 04 01 2a 00 01 00 00 00 28 00 >> 0020: 00 00 00 00 00 00 00 40 06 00 00 00 00 00 f1 84 >> 0030: d7 13 ca da e8 11 94 1d 30 85 a9 40 0a 5c 02 02 >> 0040: 04 04 30 00 5c 00 45 00 46 00 49 00 5c 00 42 00 >> 0050: 4f 00 4f 00 54 00 5c 00 42 00 4f 00 4f 00 54 00 >> 0060: 58 00 36 00 34 00 2e 00 45 00 46 00 49 00 00 00 >> 0070: 7f ff 04 00 aa 55 18 0f >> >> Same problem with ASUS P8H77-I. >> > > Do the latest fixes help? > > Warner > >> >> >>> On 24 October 2018 at 15:09, Warner Losh wrote: >> >>> >> >>>> >> >>>> >> >>>> On Wed, Oct 24, 2018 at 7:05 AM Harry Newton >> wrote: >> >>>> >> >>>>> Booted with the installer image makes efibootmgr to work as you >> said: >> >>>>> >> >>>>> gryphon# efibootmgr -v >> >>>>> BootCurrent: 0002 >> >>>>> Timeout : 2 seconds >> >>>>> BootOrder : 0001, 0002 >> >>>>> Boot0001* UEFI OS >> >>>>> >> >>>>> HD(1,GPT,b19ccd5d-7c6a-11e7-ae3e-28b2bde107e4,0x28,0x640)/ >> File(\EFI\BOOT\BOOTX64.EFI) >> >>>>> ada0p1:/EFI/BOOT/BOOTX64.EFI (null) >> >>>>> >> >>>>> However it (efibootmgr) hangs and doesn't return to the shell, >> though it >> >>>>> is >> >>>>> interruptible with ^C. >> >>>>> >> >>>>> The partition listed against Boot0001 is my efi partition. >> >>>>> >> >>>> >> >>>> Can you do something like: >> >>>> >> >>>> sudo efivar -N --hex `sudo efivar | grep Boot0002` >> >>>> >> >>>> so I can have an example of a naughty boot variable? That's almost >> >>>> certainly causing the heart-burn. >> >>>> >> >>>> Warner >> >>>> >> >>>> >> >>>> >> >>>>> /H >> >>>>> >> >>>>> On 23 October 2018 at 22:51, Kyle Evans wrote= : >> >>>>> >> >>>>>> Hi, >> >>>>>> >> >>>>>> 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. >> >>>>>> >> >>>>>> efibootmgr will only work on a successful UEFI boot, >> unfortunately- if >> >>>>>> we didn't make uefi loader -> kernel transition, then we don't ha= ve >> >>>>>> access to runtime services. >> >>>>>> >> >>>>>> Thanks, >> >>>>>> >> >>>>>> Kyle Evans >> >>>>>> >> >>>>>> [0] >> >>>>> https://download.freebsd.org/ftp/releases/amd64/amd64/ISO- >> IMAGES/12.0/ >> >>>>>> >> >>>>>> On Tue, Oct 23, 2018 at 4:23 PM Harry Newton >> 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 co= py >> >>>>>>> /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 i= t >> >>>>> 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 >> 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 wrote= : >> >>>>>>>> >> >>>>>>>>> you should have the binaries in boot - just ln (or copy) one t= o >> >>>>>> loader.efi >> >>>>>>>>> >> >>>>>>>>> rgds, >> >>>>>>>>> toomas >> >>>>>>>>> >> >>>>>>>>> >> >>>>>>>>> On 23 Oct 2018, at 23:22, Harry Newton >> 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 >> wrote: >> >>>>>>>>> >> >>>>>>>>>> ok, in that case I=E2=80=99d suggest to test out if forth bas= ed 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 possib= le >> >>>>> to >> >>>>>> chain >> >>>>>>>>>> /boot/loader_lua.efi). >> >>>>>>>>>> >> >>>>>>>>>> rgds, >> >>>>>>>>>> toomas >> >>>>>>>>>> >> >>>>>>>>>>> On 23 Oct 2018, at 23:08, Harry Newton >> >>>>> wrote: >> >>>>>>>>>>> >> >>>>>>>>>>> So it's got FORTH in it, but my loader is lua based, and als= o >> >>>>>> doesn't >> >>>>>>>>>>> appear to read loader.rc. >> >>>>>>>>>>> >> >>>>>>>>>>> /H >> >>>>>>>>>>> >> >>>>>>>>>>> On 23 October 2018 at 21:03, Toomas Soome >> >>>>> wrote: >> >>>>>>>>>>> >> >>>>>>>>>>>> hm. in that case, whats the content of /boot/loader.rc ? >> >>>>>>>>>>>> >> >>>>>>>>>>>> rgds, >> >>>>>>>>>>>> toomas >> >>>>>>>>>>>> >> >>>>>>>>>>>> >> >>>>>>>>>>>> On 23 Oct 2018, at 23:01, Harry Newton >> >>>>> 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 lo= aded 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 >> >>>>> 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 >> >>>>>> 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 efibootmg= r: >> >>>>>>>>>>>>>> >> >>>>>>>>>>>>>> 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 s= ee >> >>>>> 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 >> > >> >> >> --=20 Harry Newton