bhyve does not support suspend nor resume. To enable OpenStack procedure (create -> resume) use stub for domainResume function. If domain is running then report success; return failure in all other cases. --- src/bhyve/bhyve_driver.c | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/src/bhyve/bhyve_driver.c b/src/bhyve/bhyve_driver.c index 84d1915..f7a8912 100644 --- a/src/bhyve/bhyve_driver.c +++ b/src/bhyve/bhyve_driver.c @@ -1041,6 +1041,39 @@ bhyveConnectCompareCPU(virConnectPtr conn, return ret; } +static int +bhyveDomainResume(virDomainPtr dom) +{ + virDomainObjPtr vm; + int ret = -1; + int state; + + if (!(vm = bhyveDomObjFromDomain(dom))) + return -1; + + if (virDomainResumeEnsureACL(dom->conn, vm->def) < 0) + goto cleanup; + + + if (!virDomainObjIsActive(vm)) { + virReportError(VIR_ERR_OPERATION_INVALID, + "%s", _("domain is not running")); + goto cleanup; + } + + /* If domain is already running, return success */ + state = virDomainObjGetState(vm, NULL); + if (state == VIR_DOMAIN_RUNNING) { + ret = 0; + } + + /*Return failure in all other cases - bhyve does not support resuming */ + cleanup: + if (vm) + virObjectUnlock(vm); + return ret; +} + static virDriver bhyveDriver = { .no = VIR_DRV_BHYVE, .name = "bhyve", @@ -1080,6 +1113,7 @@ static virDriver bhyveDriver = { .nodeSetMemoryParameters = bhyveNodeSetMemoryParameters, /* 1.2.3 */ .connectBaselineCPU = bhyveConnectBaselineCPU, /* 1.2.4 */ .connectCompareCPU = bhyveConnectCompareCPU, /* 1.2.4 */ + .domainResume = bhyveDomainResume, /* 1.2.4 */ }; -- 1.9.0 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list