mirror of
https://github.com/libvirt/libvirt.git
synced 2025-02-25 18:55:26 -06:00
Get cpu time and current memory balloon from libxl
This commit is contained in:
parent
f44bfb7fb9
commit
d1c8c8d438
@ -1069,6 +1069,7 @@ libxlDomainGetInfo(virDomainPtr dom, virDomainInfoPtr info)
|
|||||||
{
|
{
|
||||||
libxlDriverPrivatePtr driver = dom->conn->privateData;
|
libxlDriverPrivatePtr driver = dom->conn->privateData;
|
||||||
virDomainObjPtr vm;
|
virDomainObjPtr vm;
|
||||||
|
libxl_dominfo d_info;
|
||||||
int ret = -1;
|
int ret = -1;
|
||||||
|
|
||||||
libxlDriverLock(driver);
|
libxlDriverLock(driver);
|
||||||
@ -1081,10 +1082,21 @@ libxlDomainGetInfo(virDomainPtr dom, virDomainInfoPtr info)
|
|||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
|
|
||||||
info->state = vm->state;
|
if (!virDomainObjIsActive(vm)) {
|
||||||
info->cpuTime = 0;
|
info->cpuTime = 0;
|
||||||
info->maxMem = vm->def->mem.max_balloon;
|
|
||||||
info->memory = vm->def->mem.cur_balloon;
|
info->memory = vm->def->mem.cur_balloon;
|
||||||
|
} else {
|
||||||
|
if (libxl_domain_info(&driver->ctx, &d_info, dom->id) != 0) {
|
||||||
|
libxlError(VIR_ERR_INTERNAL_ERROR,
|
||||||
|
_("libxl_domain_info failed for domain '%d'"), dom->id);
|
||||||
|
goto cleanup;
|
||||||
|
}
|
||||||
|
info->cpuTime = d_info.cpu_time;
|
||||||
|
info->memory = d_info.current_memkb;
|
||||||
|
}
|
||||||
|
|
||||||
|
info->state = vm->state;
|
||||||
|
info->maxMem = vm->def->mem.max_balloon;
|
||||||
info->nrVirtCpu = vm->def->vcpus;
|
info->nrVirtCpu = vm->def->vcpus;
|
||||||
ret = 0;
|
ret = 0;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user