[libvirt] [PATCH 00/10] Get ready for migration events

Jiri Denemark jdenemar at redhat.com
Thu May 21 22:42:33 UTC 2015


QEMU will soon get support for migration events which will finally
allows 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 which will allows us to do
it (patches 1 and 2) and then makes use of it for block job events
(patch 4) and abort requests (patch 10). Patch 8 fixes a bug in
migration recovery after libvirtd restarts. The rest of the patches are
mostly cleanups or bugfixes or other small changes required by the 5
main patches.

Jiri Denemark (10):
  util: Introduce thread queues
  thread: Create thread local condition for every thread
  qemu: Introduce qemuBlockJobUpdate
  qemu: Properly report failed migration
  qemu: Use thread queues for synchronous block jobs
  qemu: Don't mess up with disk->mirrorState
  Pass domain object to private data formatter/parser
  qemu: Make qemuMigrationCancelDriveMirror usable without async job
  qemu: Cancel disk mirrors after libvirtd restart
  qemu: Use thread queues for asyncAbort

 po/POTFILES.in            |   2 +-
 src/Makefile.am           |   2 +
 src/conf/domain_conf.c    |   4 +-
 src/conf/domain_conf.h    |   6 +-
 src/libvirt_private.syms  |  17 ++
 src/libxl/libxl_domain.c  |  10 +-
 src/lxc/lxc_domain.c      |  12 +-
 src/qemu/qemu_blockjob.c  | 177 +++++----------------
 src/qemu/qemu_blockjob.h  |  15 +-
 src/qemu/qemu_domain.c    |  97 +++++++++---
 src/qemu/qemu_domain.h    |   8 +-
 src/qemu/qemu_driver.c    |  24 ++-
 src/qemu/qemu_migration.c | 392 +++++++++++++++++++++++++++++-----------------
 src/qemu/qemu_migration.h |   3 +
 src/qemu/qemu_process.c   |  17 +-
 src/util/virthread.c      |  21 ++-
 src/util/virthreadqueue.c | 343 ++++++++++++++++++++++++++++++++++++++++
 src/util/virthreadqueue.h |  54 +++++++
 18 files changed, 841 insertions(+), 363 deletions(-)
 create mode 100644 src/util/virthreadqueue.c
 create mode 100644 src/util/virthreadqueue.h

-- 
2.4.1




More information about the libvir-list mailing list