[libvirt] [PATCH 10/13] Convert QEMU driver to use virCgroupNewMachine
Daniel P. Berrange
berrange at redhat.com
Tue Jul 23 15:21:15 UTC 2013
From: "Daniel P. Berrange" <berrange at redhat.com>
Convert the QEMU driver code to use the new atomic API
for setup of cgroups
Signed-off-by: Daniel P. Berrange <berrange at redhat.com>
---
src/qemu/qemu_cgroup.c | 29 +++++++++++------------------
1 file changed, 11 insertions(+), 18 deletions(-)
diff --git a/src/qemu/qemu_cgroup.c b/src/qemu/qemu_cgroup.c
index 6455f50..bca8630 100644
--- a/src/qemu/qemu_cgroup.c
+++ b/src/qemu/qemu_cgroup.c
@@ -633,7 +633,6 @@ qemuInitCgroup(virQEMUDriverPtr driver,
{
int ret = -1;
qemuDomainObjPrivatePtr priv = vm->privateData;
- virCgroupPtr parent = NULL;
virQEMUDriverConfigPtr cfg = virQEMUDriverGetConfig(driver);
if (!cfg->privileged)
@@ -664,32 +663,26 @@ qemuInitCgroup(virQEMUDriverPtr driver,
vm->def->resource->partition);
goto cleanup;
}
- /* We only auto-create the default partition. In other
- * cases we expec the sysadmin/app to have done so */
- if (virCgroupNewPartition(vm->def->resource->partition,
- STREQ(vm->def->resource->partition, "/machine"),
- cfg->cgroupControllers,
- &parent) < 0) {
+
+ if (virCgroupNewMachine(vm->def->name,
+ "qemu",
+ cfg->privileged,
+ vm->def->uuid,
+ NULL,
+ vm->pid,
+ false,
+ vm->def->resource->partition,
+ cfg->cgroupControllers,
+ &priv->cgroup) < 0) {
if (virCgroupNewIgnoreError())
goto done;
goto cleanup;
}
- if (virCgroupNewDomainPartition(parent,
- "qemu",
- vm->def->name,
- true,
- &priv->cgroup) < 0)
- goto cleanup;
-
- if (virCgroupAddTask(priv->cgroup, vm->pid) < 0)
- goto cleanup;
-
done:
ret = 0;
cleanup:
- virCgroupFree(&parent);
virObjectUnref(cfg);
return ret;
}
--
1.8.1.4
More information about the libvir-list
mailing list