
On 07/29/2014 02:41 AM, Sam Bobroff wrote:
During a QEMU live migration several warning messages about job handling could be written to syslog on the destination host:
"entering monitor without asking for a nested job is dangerous"
The messages are written because the job handling during migration uses hard coded asyncJob values in several places that are incorrect.
This patch passes the required asyncJob value around and prevents the warnings as well as any issues that the warnings may be referring to.
Signed-off-by: Sam Bobroff <sam.bobroff@au1.ibm.com> --
This patch seems to fix the deadlock that can happen if the migrated domain is destroyed at the destination reported here: https://www.redhat.com/archives/libvir-list/2014-May/msg00236.html It looks good to me, but it seems there are more functions calling qemuDomainObjEnterMonitor that can be called from qemuProcessStart, for example qemuDomainChangeGraphicsPasswords.
@@ -2505,7 +2506,7 @@ qemuDomainUpdateDeviceList(virQEMUDriverPtr driver, if (!virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_DEVICE_DEL_EVENT)) return 0;
- qemuDomainObjEnterMonitor(driver, vm); + ignore_value(qemuDomainObjEnterMonitorAsync(driver, vm, asyncJob));
Also, the return value of this call could be dangerous to ignore if asyncJob != NONE. Jan