When QEMU exits on destination during migration, the source reports
either success (if the failure happened at the very end) or unhelpful
"unexpectedly failed" error message, only the destination host knows
more about the error, but usually there's no way to get the error back
to the source because the domain is already gone at the time
virDomainMigrateFinish* is called.

This series changes libvirt to remember incoming migration errors so
that they can be sent back to a source host.

https://bugzilla.redhat.com/show_bug.cgi?id=1090093

Jiri Denemark (5):
  Introduce virHashAtomic
  Introduce virErrorCopyNew
  qemu: Remember incoming migration errors
  qemu: Don't report false error from MigrateFinish
  qemu: Use error from Finish instead of "unexpectedly failed"

 docs/apibuild.py            |   1 +
 include/libvirt/virterror.h |   1 +
 src/libvirt-domain.c        |  30 ++++++++++++-
 src/libvirt_private.syms    |   4 ++
 src/qemu/qemu_conf.h        |   3 ++
 src/qemu/qemu_driver.c      |  31 +++++++++----
 src/qemu/qemu_migration.c   | 104 ++++++++++++++++++++++++++++++++++++++++++--
 src/qemu/qemu_migration.h   |   7 +++
 src/qemu/qemu_monitor.c     |  14 ++++++
 src/qemu/qemu_monitor.h     |   2 +
 src/qemu/qemu_process.c     |   4 ++
 src/util/virerror.c         |  22 ++++++++++
 src/util/virerror.h         |   1 +
 src/util/virhash.c          |  81 ++++++++++++++++++++++++++++++++++
 src/util/virhash.h          |  10 +++++
 15 files changed, 302 insertions(+), 13 deletions(-)

-- 
2.4.5

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Reply via email to