HEADS UP: Imported Xen 4.7 and blkback changes - domU respawning on_crash
Roger Pau Monné
royger at FreeBSD.org
Thu Jun 9 07:44:33 UTC 2016
On Wed, Jun 08, 2016 at 10:35:22PM +0000, Marcin Cieslak wrote:
> On Wed, 8 Jun 2016, Marcin Cieslak wrote:
> > On Fri, 3 Jun 2016, Roger Pau Monné wrote:
> > > Hello,
> > >
> > > First of all, this message is only relevant to those that use FreeBSD as
> > > Dom0 (host), not as a DomU (guest), so don't panic.
> > >
> > > I've imported the latest Xen version (4.7-rc4) into the ports tree, it's
> > > still not the final version, but it's quite close, so we better start
> > > testing it to make sure it works fine with FreeBSD.
> One issue maybe unrelated to FreeBSD:
> This domain:
> builder = "hvm"
> memory = 4096
> vcpus = 2
> name = "Windows2016"
> disk = [
> # '/root/win/install.iso,raw,hdc:cdrom,r'
> boot = "c" # Boot to hard disk image
> vnc = 2
> #vnclisten = "0.0.0.0"
> usbdevice = 'tablet'
> on_poweroff = 'destroy'
> on_reboot = 'restart'
> on_crash = 'restart'
> acpi = 1
> bios = 'ovmf'
> vif = [ 'bridge=bridge0,mac=00:16:3e:5d:0d:48' ]
> vga = "stdvga"
> crashes because I didn't have ovmf image:
> (d203) HVM Loader
> (d203) Detected Xen v4.7.0-rc
> (d203) Xenbus rings @0xfeffc000, event channel 1
> (d203) Unknown BIOS ovmf, no ROM image found
> (d203) *** HVMLoader bug at hvmloader.c:229
> (d203) *** HVMLoader crashed.
> But I seem unable to kill it with "xl destroy" - it keeps
> respawning again:
> Windows2016 211 4079 1 --p--- 0.0
> Windows2016 213 4096 1 --psc- 0.0
> Windows2016 221 4096 1 --psc- 0.0
> (null) 221 147 1 --psc- 0.0
> I have finally managed to snatch it by issuing this a few times, after
> changing the "on_crash" to 'destroy':
> # xl config-update Windows2016 xen/windows-run.cfg
> WARNING: xl now has better capability to manage domain configuration, avoid using this command when possible
> setting dom243 configuration
The problem is that the domain crashed so early on boot that you weren't
able to destroy it, and kept rebooting due to the "on_crash = 'restart'"
option. IIRC I've also used the following hacky rune in order to terminate
this kind of domains: "while [ 1 ]; do xl destroy <name>; done", but your
solution seems better.
More information about the freebsd-virtualization