On Wed, Jun 10, 2015 at 17:13:12 +0200, Peter Krempa wrote:
On Wed, Jun 10, 2015 at 15:42:34 +0200, Jiri Denemark wrote:
> QEMU will soon (patches are available on qemu-devel) get support for
> migration events which will finally allow us to get rid of polling
> query-migrate every 50ms. However, we first need to be able to wait for
> all events related to migration (migration status changes, block job
> events, async abort requests) at once. This series prepares the
> infrastructure and uses it to switch all polling loops in migration code
> to pthread_cond_wait.
>
>
https://bugzilla.redhat.com/show_bug.cgi?id=1212077
>
> Version 3 (see individual patches for details):
> - most of the series has been ACKed in v2
> - "qemu: Use domain condition for synchronous block jobs" was split in 3
> patches for easier review
> - minor changes requested in v2 review
>
> Version 2 (see individual patches for details):
> - rewritten using per-domain condition variable
> - enahnced to fully support the migration events
>
>
> Jiri Denemark (24):
> conf: Introduce per-domain condition variable
> qemu: Introduce qemuBlockJobUpdate
> qemu: Properly report failed migration
> qemu: Use domain condition for synchronous block jobs
> qemu: Cancel storage migration in parallel
> qemu: Abort migration early if disk mirror failed
> qemu: Don't mess with disk->mirrorState
> Pass domain object to private data formatter/parser
> qemu: Make qemuMigrationCancelDriveMirror usable without async job
> qemu: Refactor qemuMonitorBlockJobInfo
> qemu: Cancel disk mirrors after libvirtd restart
> qemu: Use domain condition for asyncAbort
> qemu_monitor: Wire up SPICE_MIGRATE_COMPLETED event
> qemu: Do not poll for spice migration status
> qemu: Refactor qemuDomainGetJob{Info,Stats}
> qemu: Refactor qemuMigrationUpdateJobStatus
> qemu: Don't pass redundant job name around
> qemu: Refactor qemuMigrationWaitForCompletion
> qemu_monitor: Wire up MIGRATION event
> qemuDomainGetJobStatsInternal: Support migration events
> qemu: Update migration state according to MIGRATION event
> qemu: Wait for migration events on domain condition
> qemu: cancel drive mirrors when p2p connection breaks
ACK to the above ones once qemu accepts the event stuff.
Thanks, I pushed all patches which did not rely on the new MIGRATION
event, in other words, all except the following ones:
qemu_monitor: Wire up MIGRATION event
qemuDomainGetJobStatsInternal: Support migration events
qemu: Update migration state according to MIGRATION event
qemu: Wait for migration events on domain condition
DO NOT APPLY: qemu: Work around weird migration status changes
Jirka