Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 Sep 2019 13:24:38 +0300
From:      Toomas Soome <tsoome@me.com>
To:        Warner Losh <imp@bsdimp.com>
Cc:        KIRIYAMA Kazuhiko <kiri@truefc.org>, FreeBSD Current <freebsd-current@freebsd.org>
Subject:   Re: r352368 can't boot
Message-ID:  <8A9627B9-8190-490C-8D76-6F2A9D00E059@me.com>
In-Reply-To: <CANCZdfr2P=OBKZeVd4mMpup%2BTvVbr28feHSt7dCmFp6bMRi82A@mail.gmail.com>
References:  <201909170530.x8H5UGxo012419@kx.truefc.org> <5E929415-319A-490D-AB9A-2F8259391B13@me.com> <CANCZdfr2P=OBKZeVd4mMpup%2BTvVbr28feHSt7dCmFp6bMRi82A@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help


> On 17 Sep 2019, at 13:09, Warner Losh <imp@bsdimp.com> wrote:
>=20
>=20
>=20
> On Tue, Sep 17, 2019, 6:47 AM Toomas Soome <tsoome@me.com =
<mailto:tsoome@me.com>> wrote:
>=20
>=20
> > On 17 Sep 2019, at 08:30, KIRIYAMA Kazuhiko <kiri@truefc.org =
<mailto:kiri@truefc.org>> wrote:
> >=20
> > Hi,all
> >=20
> > Yesterday I've updated latest head (r352368) and rebuild
> > 13.0-CURRENT. All went fine, but when I boot, it's stopped
> > at boot stage. Then I typed `boot', booted normally and put
> > login prompt and login go ahead. But `shutdown -r now',
> > stopped at loader prompt same as login case. What happened?
> > All I've done is whithin bhyve VM.
> >=20
> >=20
>=20
>=20
> > Consoles: userboot =20
> >=20
> > FreeBSD/amd64 User boot, Revision 1.1
> > (Mon Jun 18 16:11:55 UTC 2018 root@releng3.nyi.freebsd.org =
<mailto:root@releng3.nyi.freebsd.org>)
> > Loading /boot/defaults/loader.conf
> > xemit not found
> > Error while including /boot/frames.4th, in the line:
> >                h_el @ xemit
> >=20
> > can't load 'kernel'
> >=20
> > Type '?' for a list of commands, 'help' for more detailed help.
> > OK=20
> >=20
>=20
> This is unfortunate case where the guest image has more recent boot =
scripts than hosts /boot/userboot.so has. I did push the fix for that =
issue to stable/11 and stable/12. The patch does introduce xemit word.
>=20
> Such situation is unfortunate, but accident waiting to happen with =
this method where we are attempting to use bootloader (userboot.so) from =
older system to load  guest vm.=20
>=20
> Can we provide a fallback to xemit builtin for old systems without it? =
I believe we did this for other things as a transition. Forth has a way =
to do this, though we need to make sure we properly constrain what we =
pass to emit...
>=20
> Warner
>=20
> P.s. I'm at legoland this week, so I can't look at it for a bit.
>=20

Well, the only way to avoid such issue is to make sure the guest =
environment is providing all the needed bits, but since we do have =
interpreter inside the userboot.so and userboot.so is in host, this does =
set rather unfortunate limits what we can do.

rgds,
toomas=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8A9627B9-8190-490C-8D76-6F2A9D00E059>