From 6f67d9c0cf86aee0ce7c81561632db3b58c8c300 Mon Sep 17 00:00:00 2001 From: Alexander Burluka Date: Mon, 1 Dec 2014 18:38:55 +0300 Subject: [PATCH] parallels: added function virDomainIsActive() That function is necessary for proper domain removal in openstack/nova. Signed-off-by: Dmitry Guryanov --- src/parallels/parallels_driver.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/src/parallels/parallels_driver.c b/src/parallels/parallels_driver.c index 955516ac7f..998f9aee0c 100644 --- a/src/parallels/parallels_driver.c +++ b/src/parallels/parallels_driver.c @@ -890,6 +890,24 @@ static int parallelsDomainShutdown(virDomainPtr domain) return prlsdkDomainChangeState(domain, prlsdkStop); } +static int parallelsDomainIsActive(virDomainPtr domain) +{ + parallelsConnPtr privconn = domain->conn->privateData; + virDomainObjPtr dom = NULL; + int ret = -1; + + dom = virDomainObjListFindByUUID(privconn->domains, domain->uuid); + if (dom == NULL) { + parallelsDomNotFoundError(domain); + return -1; + } + + ret = virDomainObjIsActive(dom); + virObjectUnlock(dom); + + return ret; +} + static virHypervisorDriver parallelsDriver = { .no = VIR_DRV_PARALLELS, .name = "Parallels", @@ -921,6 +939,7 @@ static virHypervisorDriver parallelsDriver = { .domainShutdown = parallelsDomainShutdown, /* 0.10.0 */ .domainCreate = parallelsDomainCreate, /* 0.10.0 */ .domainDefineXML = parallelsDomainDefineXML, /* 0.10.0 */ + .domainIsActive = parallelsDomainIsActive, /* 1.2.10 */ .connectDomainEventRegisterAny = parallelsConnectDomainEventRegisterAny, /* 1.2.10 */ .connectDomainEventDeregisterAny = parallelsConnectDomainEventDeregisterAny, /* 1.2.10 */ .nodeGetCPUMap = parallelsNodeGetCPUMap, /* 1.2.8 */ -- GitLab