int io_status;
};
-/*
- * To avoid a certain deadlock this callback must never call any
- * virQEMUCloseCallbacks* API.
- */
typedef virDomainObjPtr (*virQEMUCloseCallback)(virQEMUDriverPtr driver,
virDomainObjPtr vm,
virConnectPtr conn);
qemuDomainCleanupRun(driver, vm);
/* Stop autodestroy in case guest is restarted */
- if (!priv->autoDestroyed)
- qemuProcessAutoDestroyRemove(driver, vm);
+ qemuProcessAutoDestroyRemove(driver, vm);
/* now that we know it's stopped call the hook if present */
if (virHookPresent(VIR_HOOK_DRIVER_QEMU)) {
VIR_DEBUG("Killing domain");
- /* We need to prevent qemuProcessStop from removing this function from
- * closeCallbacks since that would cause a deadlock.
- */
- priv->autoDestroyed = true;
qemuProcessStop(driver, dom, VIR_DOMAIN_SHUTOFF_DESTROYED,
VIR_QEMU_PROCESS_STOP_MIGRATED);
- priv->autoDestroyed = false;
virDomainAuditStop(dom, "destroyed");
event = virDomainEventNewFromObj(dom,