Date: Sun, 19 Aug 2018 11:04:35 -0600 From: Warner Losh <imp@bsdimp.com> To: John Baldwin <jhb@freebsd.org> Cc: Kyle Evans <kevans@freebsd.org>, FreeBSD Current <freebsd-current@freebsd.org>, Tycho Nightingale <tychon@freebsd.org> Subject: Re: LUA loader: bhyve now doesn't? Message-ID: <CANCZdfrvStfq92HeDoeHVR7cS=xeOJN=nykc%2BG4xT-qXz6fU0A@mail.gmail.com> In-Reply-To: <167d1cb1-7232-52bb-9a73-6f109c437a63@FreeBSD.org> References: <20180819152253.bbcrefdvynl7y5ka@ler-imac.local> <CANCZdfqHV7Fy%2BbJAuMv5gfJmPJqh1QmKqjGz-bVH2wh6NyqeVQ@mail.gmail.com> <20180819153526.7ruovrpmdsimkmfj@ler-imac.local> <CANCZdfr2h=e-4%2BD9JYR3TkKyaEywYkCnXmyGmVMq6-NpN=GX2w@mail.gmail.com> <CACNAnaGh%2BgpwcDE3TQKd9xCnJpD4GtE2Z0wwjagKMUNVhdHznw@mail.gmail.com> <167d1cb1-7232-52bb-9a73-6f109c437a63@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Aug 19, 2018 at 10:58 AM, John Baldwin <jhb@freebsd.org> wrote: > On 8/19/18 5:28 PM, Kyle Evans wrote: > > On Sun, Aug 19, 2018 at 10:42 AM, Warner Losh <imp@bsdimp.com> wrote: > >> On Sun, Aug 19, 2018 at 9:35 AM, Larry Rosenman <ler@freebsd.org> > wrote: > >> > >>> On Sun, Aug 19, 2018 at 09:33:18AM -0600, Warner Losh wrote: > >>>> On Sun, Aug 19, 2018 at 9:22 AM, Larry Rosenman <ler@freebsd.org> > wrote: > >>>> > >>>>> With today's change to LUA as the loader, I seem to have an issue > with > >>>>> bhyhve: > >>>>> > >>>>> Consoles: userboot > >>>>> > >>>>> FreeBSD/amd64 User boot, Revision 1.1 > >>>>> (Thu Nov 16 15:04:02 CST 2017 root@borg.lerctr.org) > >>>>> Startup error in /boot/lua/loader.lua: > >>>>> LUA ERROR: cannot open /boot/lua/loader.lua: no such file or > directory. > >>>>> > >>>>> /boot/kernel/kernel text=0x1063d88 data=0x12e930+0x283970 > >>>>> syms=[0x8+0x14cf28+0x8+0x163e57] > >>>>> Hit [Enter] to boot immediately, or any other key for command prompt. > >>>>> Booting [/boot/kernel/kernel]... > >>>>> > >>>>> These VM's have been running for MONTHS. > >>>>> > >>>>> Ideas? > >>>>> > >>>> > >>>> There's no boot/lua/loader.lua. > >>>> > >>>> You can either fix that, or you can recompile with > >>>> LOADER_DEFAULT_INTERP=4th for the moment. > >>> actually on the host there is: > >>> borg.lerctr.org /home/ler $ ls -l /boot/lua/ > >>> total 131 > >>> -r--r--r-- 1 root wheel 3895 Aug 19 09:46 cli.lua > >>> -r--r--r-- 1 root wheel 3204 Aug 19 09:46 color.lua > >>> -r--r--r-- 1 root wheel 14024 Aug 19 09:46 config.lua > >>> -r--r--r-- 1 root wheel 10302 Aug 19 09:46 core.lua > >>> -r--r--r-- 1 root wheel 9986 Aug 19 09:46 drawer.lua > >>> -r--r--r-- 1 root wheel 3324 Aug 19 09:46 hook.lua > >>> -r--r--r-- 1 root wheel 2543 Aug 19 09:46 loader.lua > >>> -r--r--r-- 1 root wheel 2431 Aug 19 09:46 logo-beastie.lua > >>> -r--r--r-- 1 root wheel 2203 Aug 19 09:46 logo-beastiebw.lua > >>> -r--r--r-- 1 root wheel 1958 Aug 19 09:46 logo-fbsdbw.lua > >>> -r--r--r-- 1 root wheel 2399 Aug 19 09:46 logo-orb.lua > >>> -r--r--r-- 1 root wheel 2119 Aug 19 09:46 logo-orbbw.lua > >>> -r--r--r-- 1 root wheel 12010 Aug 19 09:46 menu.lua > >>> -r--r--r-- 1 root wheel 3941 Aug 19 09:46 password.lua > >>> -r--r--r-- 1 root wheel 2381 Aug 19 09:46 screen.lua > >>> borg.lerctr.org /home/ler $ > >>> > >>> This is when booting the vm, and it's not on the vm's disk. > >>> > >>> So the bhyveload behavior *CHANGED*. > >>> > >>> POLA? > >>> > >> > >> Unlikely, but a couple of questions. Have you always used the LUA > loader, > >> or is this a change with the recent default switch? > >> > >> And to be clear, you expect the host's file to be used for this, not > the VM > >> filesystem? > >> > > > > (CC'ing jhb@ and tychon@, who might have better insight) > > > > If we can swing it, I think the best model here should have always > > been that userboot uses the host's scripts but the guest's > > loader.conf. The current model doesn't tolerate any mismatch between > > host and guest and looks unsustainable. > > Err, normally guests read things out of the a guest disk image (think most > VMs like VirtualBox, etc.). userboot.so is looking in the guest's disk > image. > Now, userboot isn't memory limited like the BIOS boot, so if it's > possible to have userboot just include both lua and forth perhaps with > some auto-detection based on what is in /boot/loader.rc to determine > which interpreter to use, that is really the best path forward. > You can't have both interpreters in the same image. You can't easily determine what the language to use for the interpreter. You can only determine if lua is present or not. Warner
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfrvStfq92HeDoeHVR7cS=xeOJN=nykc%2BG4xT-qXz6fU0A>