Date: Fri, 23 Mar 2018 12:31:48 -0500 From: Kyle Evans <kevans@freebsd.org> To: "Rodney W. Grimes" <freebsd-rwg@pdx.rh.cn85.dnsmgr.net> Cc: Joe Maloney <jmaloney@ixsystems.com>, Warner Losh <imp@freebsd.org>, "freebsd-virtualization@freebsd.org" <freebsd-virtualization@freebsd.org> Subject: Re: Issue encountered booting FreeBSD STABLE and CURRENT snapshots with EFI Message-ID: <CACNAnaEu9g2F4HqJVU3iVRmvYhbSpeyAtYxagfAimKC2_Jra0g@mail.gmail.com> In-Reply-To: <201803231458.w2NEwMr7031548@pdx.rh.CN85.dnsmgr.net> References: <CACNAnaFp5VLjF_XWtZTcD2k9VxDBrsXPGv%2BnXbuJx2rMV_m15Q@mail.gmail.com> <201803231458.w2NEwMr7031548@pdx.rh.CN85.dnsmgr.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Mar 23, 2018 at 9:58 AM, Rodney W. Grimes <freebsd-rwg@pdx.rh.cn85.dnsmgr.net> wrote: >> On Fri, Mar 23, 2018 at 3:56 AM, Joe Maloney <jmaloney@ixsystems.com> wrote: >> > We narrowed the issue down to how vm-bhyve attaches a null.iso when starting >> > the VM. >> > >> >> What exactly are the contents of this null.iso? It sounds like we're > > touch "null.iso" > -rw-r--r-- 1 root wheel 0 Dec 3 22:55 /home/vmbhyve/.config/null.iso > > It is litterly a 0 byte file. This is just there to appease windows > installer that you have a cd drive. > > You can test with bhyve yourself this problem by adding: > -s 3:0,ahci-cd,${vm_dir}/.config/null.iso > to your bhyve command. > Thanks for that! A couple hundred printf's later, I think this might be a firmware bug or something of the sort (?). In this loop [1], the address at 'dp' is getting immediately clobbered by the efi_lookup_devpath on every iteration, so we end up looking at basically all of the partitions and this null.iso unfortunately meets this criteria [2] for removable media with no media present. Therefore, we detect absolutely no disks. The only candidate in efi_lookup_devpath [3] is the firmware itself having overwritten the devpath at that address. We can confirm this with a printf just after the efi_lookup_devpath- the pointer it's returning is in fact exactly match 'dp' every single time. Is there a newer/different firmware you can try? This seems like really peculiar behavior for a firmware to be exhibiting. [1] https://svnweb.freebsd.org/base/head/stand/efi/libefi/efipart.c?view=markup#l232 [2] https://svnweb.freebsd.org/base/head/stand/efi/libefi/efipart.c?view=markup#l261 [3] https://svnweb.freebsd.org/base/head/stand/efi/libefi/devpath.c?view=markup#l53
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CACNAnaEu9g2F4HqJVU3iVRmvYhbSpeyAtYxagfAimKC2_Jra0g>