提交 3f0fe2dc 编写于 作者: P Peter Krempa

qemu: Simplify qemuDomainGetNumaParameters by using virDomainObjGetOneDef

上级 7d91a2d9
...@@ -10277,36 +10277,24 @@ qemuDomainGetNumaParameters(virDomainPtr dom, ...@@ -10277,36 +10277,24 @@ qemuDomainGetNumaParameters(virDomainPtr dom,
int *nparams, int *nparams,
unsigned int flags) unsigned int flags)
{ {
virQEMUDriverPtr driver = dom->conn->privateData;
size_t i; size_t i;
virDomainObjPtr vm = NULL; virDomainObjPtr vm = NULL;
virDomainDefPtr persistentDef = NULL;
virDomainNumatuneMemMode tmpmode = VIR_DOMAIN_NUMATUNE_MEM_STRICT; virDomainNumatuneMemMode tmpmode = VIR_DOMAIN_NUMATUNE_MEM_STRICT;
char *nodeset = NULL; char *nodeset = NULL;
int ret = -1; int ret = -1;
virCapsPtr caps = NULL;
virDomainDefPtr def = NULL; virDomainDefPtr def = NULL;
virCheckFlags(VIR_DOMAIN_AFFECT_LIVE | virCheckFlags(VIR_DOMAIN_AFFECT_LIVE |
VIR_DOMAIN_AFFECT_CONFIG | VIR_DOMAIN_AFFECT_CONFIG |
VIR_TYPED_PARAM_STRING_OKAY, -1); VIR_TYPED_PARAM_STRING_OKAY, -1);
/* We blindly return a string, and let libvirt.c and
* remote_driver.c do the filtering on behalf of older clients
* that can't parse it. */
flags &= ~VIR_TYPED_PARAM_STRING_OKAY;
if (!(vm = qemuDomObjFromDomain(dom))) if (!(vm = qemuDomObjFromDomain(dom)))
return -1; return -1;
if (virDomainGetNumaParametersEnsureACL(dom->conn, vm->def) < 0) if (virDomainGetNumaParametersEnsureACL(dom->conn, vm->def) < 0)
goto cleanup; goto cleanup;
if (!(caps = virQEMUDriverGetCapabilities(driver, false))) if (!(def = virDomainObjGetOneDef(vm, flags)))
goto cleanup;
if (virDomainLiveConfigHelperMethod(caps, driver->xmlopt, vm, &flags,
&persistentDef) < 0)
goto cleanup; goto cleanup;
if ((*nparams) == 0) { if ((*nparams) == 0) {
...@@ -10315,11 +10303,6 @@ qemuDomainGetNumaParameters(virDomainPtr dom, ...@@ -10315,11 +10303,6 @@ qemuDomainGetNumaParameters(virDomainPtr dom,
goto cleanup; goto cleanup;
} }
if (flags & VIR_DOMAIN_AFFECT_CONFIG)
def = persistentDef;
else
def = vm->def;
for (i = 0; i < QEMU_NB_NUMA_PARAM && i < *nparams; i++) { for (i = 0; i < QEMU_NB_NUMA_PARAM && i < *nparams; i++) {
virMemoryParameterPtr param = &params[i]; virMemoryParameterPtr param = &params[i];
...@@ -10357,7 +10340,6 @@ qemuDomainGetNumaParameters(virDomainPtr dom, ...@@ -10357,7 +10340,6 @@ qemuDomainGetNumaParameters(virDomainPtr dom,
cleanup: cleanup:
VIR_FREE(nodeset); VIR_FREE(nodeset);
virDomainObjEndAPI(&vm); virDomainObjEndAPI(&vm);
virObjectUnref(caps);
return ret; return ret;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册