mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
ch_process: Check whether domain is already running before starting it
There are two places where a domain can be started in CH driver: chDomainCreateXML() and chDomainCreateWithFlags(). Both acquire a job (good), but neither of them checks whether the domain isn't already running. This is wrong. Fortunately, both function call the very same virCHProcessStart() rendering it the best place for such check. Signed-off-by: Michal Privoznik <mprivozn@redhat.com> Reviewed-by: Tim Wiederhake <twiederh@redhat.com>
This commit is contained in:
parent
22a96eac7c
commit
83cf648ced
@ -470,6 +470,12 @@ virCHProcessStart(virCHDriver *driver,
|
||||
g_autofree int *nicindexes = NULL;
|
||||
size_t nnicindexes = 0;
|
||||
|
||||
if (virDomainObjIsActive(vm)) {
|
||||
virReportError(VIR_ERR_OPERATION_INVALID, "%s",
|
||||
_("VM is already active"));
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (!priv->monitor) {
|
||||
/* And we can get the first monitor connection now too */
|
||||
if (!(priv->monitor = virCHProcessConnectMonitor(driver, vm))) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user