From: "Daniel P. Berrange" <berrange@xxxxxxxxxx> Convert the QEMU driver code to use the new atomic API for setup of cgroups Signed-off-by: Daniel P. Berrange <berrange@xxxxxxxxxx> --- 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 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list