1
0
mirror of https://gitlab.com/libvirt/libvirt.git synced 2025-03-07 17:28:15 +00:00

xen: Allow to undefine a running domain (xm_internal)

This commit is contained in:
Osier Yang 2011-08-19 21:53:39 +08:00
parent b9736d5b21
commit 49186deda6

View File

@ -1218,8 +1218,6 @@ int xenXMDomainUndefine(virDomainPtr domain) {
return (-1);
}
if (domain->id != -1)
return (-1);
if (domain->conn->flags & VIR_CONNECT_RO)
return (-1);
@ -1235,13 +1233,17 @@ int xenXMDomainUndefine(virDomainPtr domain) {
if (unlink(entry->filename) < 0)
goto cleanup;
/* Remove the name -> filename mapping */
if (virHashRemoveEntry(priv->nameConfigMap, domain->name) < 0)
goto cleanup;
if (virDomainObjIsActive(vm)) {
vm->persistent = 0;
} else {
/* Remove the name -> filename mapping */
if (virHashRemoveEntry(priv->nameConfigMap, domain->name) < 0)
goto cleanup;
/* Remove the config record itself */
if (virHashRemoveEntry(priv->configCache, entry->filename) < 0)
goto cleanup;
/* Remove the config record itself */
if (virHashRemoveEntry(priv->configCache, entry->filename) < 0)
goto cleanup;
}
ret = 0;