[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] 3.1: second invocation of migrate crashes qemu
From: |
Dr. David Alan Gilbert |
Subject: |
Re: [Qemu-devel] 3.1: second invocation of migrate crashes qemu |
Date: |
Fri, 18 Jan 2019 15:57:03 +0000 |
User-agent: |
Mutt/1.10.1 (2018-07-13) |
* Kevin Wolf (address@hidden) wrote:
> Am 14.01.2019 um 11:51 hat Dr. David Alan Gilbert geschrieben:
> > * Michael Tokarev (address@hidden) wrote:
> > > $ qemu-system-x86_64 -monitor stdio -hda foo.img
> > > QEMU 3.1.0 monitor - type 'help' for more information
> > > (qemu) stop
> > > (qemu) migrate "exec:cat >/dev/null"
> > > (qemu) migrate "exec:cat >/dev/null"
> > > qemu-system-x86_64: /build/qemu/qemu-3.1/block.c:4647:
> > > bdrv_inactivate_recurse: Assertion `!(bs->open_flags & BDRV_O_INACTIVE)'
> > > failed.
> > > Aborted
> >
> > And on head as well; it only happens if the 1st migrate is succesful;
> > if it got cancelled the 2nd one works, so it's not too bad.
> >
> > I suspect the problem here is all around locking/ownership - the block
> > devices get shutdown at the end of migration since the assumption is
> > that the other end has them open now and we had better release them.
>
> Yes, only "cont" gets control back to the source VM.
>
> I think we really should limit the possible monitor commands in the
> postmigrate status, and possibly provide a way to get back to the
> regular paused state (which means getting back control of the resources)
> without resuming the VM first.
This error is a little interesting if you'd done something like:
src:
stop
migrate
dst:
<kill qemu for some reason>
start a new qemu
src:
migrate
Now that used to work (safely) - note we've not started
a VM succesfully anywhere else.
Now the source refuses to let that happen - with a rather
nasty abort.
Dave
> Kevin
--
Dr. David Alan Gilbert / address@hidden / Manchester, UK