Re: [Qemu-devel] [PATCH 2/10] Allow the monitor to be suspended during non-blocking op

Daniel P. Berrange
2008-09-10T11:16:40Z

On Wed, Sep 10, 2008 at 02:11:56PM +0300, Avi Kivity wrote:
> Daniel P. Berrange wrote:
>
> >>This means that migration is no longer transparent. While migration is
> >>going on, you can't change the cdrom media, look at cpu registers, or do
> >>anything that requires the monitor.
> >>
> >
> >Changing cdrom media while in the middle of migration sounds like a rather
> >troubleprone thing todo - you'd need to change the media in both active
> >QEMU instances at the same time to be safe.
>
> Or rather, such state should be part of the migration. There's the
> question of whether to transform the path on the target, but "which
> media is in the drive" is part of the hardware state.
>
> (logically we would copy all of the data of all block devices, but
> that's not very practical, so we assume shared storage).
>
> What other commands are unsafe during migration? I exclude host device
> assignment which is obviously migration unfriendly.

USB + virtio device attach/detach - well at least have the same need as
media change - you'd need to propagate the change to the other side in
some way. Currently migrate just assumes the management tool/admin has
started QEMU on the destinations with the matching hardware config, and
for libvirt to use the monitor to add USB /virtio devices at both ends
has the race condition/synchronization problem .

Daniel
--
|: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :|
|: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|