Looks like nobody tried migrations lately. I just did and found
interesting bug. On the destination qemu binary was at different
path. So I've dumped domain XML I was trying ti migrate and just
changed the emulator path. All of a sudden I observed plenty of
errors. Problem is that whilst parsing the user provided
migration XML (and doing other operations on it), because of
parse callbacks we need qemuCaps for the binary. However, we just
take the def->emulator and expect it to exist. Well, it doesn't.
Michal Privoznik (9):
conf: Introduce virDomainDefPostParseOpaque
conf: Introduce virDomainDefParseStringOpaque
qemuDomainDefPostParse: Fetch qemuCaps from domain object
conf: Extend virDomainDeviceDefPostParse for parseOpaque
qemuDomainDeviceDefPostParse: Fetch caps from domain object
conf: Extend virDomainDefAssignAddressesCallback for parseOpaque
qemuDomainDefAssignAddresses: Fetch caps from domain object
domain_conf: Introduce VIR_DOMAIN_DEF_PARSE_SKIP_POST_PARSE
conf: Skip post parse callbacks when creating copy
src/bhyve/bhyve_domain.c | 6 ++--
src/conf/domain_conf.c | 80 +++++++++++++++++++++++++++++++++++++---------
src/conf/domain_conf.h | 43 +++++++++++++++++++++----
src/libvirt_private.syms | 3 ++
src/libxl/libxl_domain.c | 6 ++--
src/lxc/lxc_domain.c | 6 ++--
src/openvz/openvz_driver.c | 6 ++--
src/phyp/phyp_driver.c | 6 ++--
src/qemu/qemu_domain.c | 50 ++++++++++++++++++++++-------
src/qemu/qemu_migration.c | 6 ++--
src/uml/uml_driver.c | 6 ++--
src/vbox/vbox_common.c | 6 ++--
src/vmware/vmware_driver.c | 6 ++--
src/vmx/vmx.c | 6 ++--
src/vz/vz_driver.c | 6 ++--
src/xen/xen_driver.c | 6 ++--
src/xenapi/xenapi_driver.c | 6 ++--
17 files changed, 195 insertions(+), 59 deletions(-)
--
2.8.4