From: Daniel P. Berrange Date: Thu, 4 Mar 2010 11:01:52 +0000 (+0000) Subject: Avoid creating top level cgroups if just querying for existance X-Git-Tag: v0.7.7~6 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ede3bc112830491dca1b4ef24762cd52730762c3;p=thirdparty%2Flibvirt.git Avoid creating top level cgroups if just querying for existance When getting the driver/domain cgroup it is possible to specify whether it should be auto created. If auto-creation was turned off, libvirt still mistakenly created its own top level cgroup * src/util/cgroup.c: Honour autocreate flag for top level cgroup --- diff --git a/src/util/cgroup.c b/src/util/cgroup.c index ad0d5955a4..b4c3353fb2 100644 --- a/src/util/cgroup.c +++ b/src/util/cgroup.c @@ -519,7 +519,8 @@ err: } static int virCgroupAppRoot(int privileged, - virCgroupPtr *group) + virCgroupPtr *group, + int create) { virCgroupPtr rootgrp = NULL; int rc; @@ -551,7 +552,7 @@ static int virCgroupAppRoot(int privileged, if (rc != 0) goto cleanup; - rc = virCgroupMakeGroup(rootgrp, *group, 1); + rc = virCgroupMakeGroup(rootgrp, *group, create); cleanup: virCgroupFree(&rootgrp); @@ -638,7 +639,7 @@ int virCgroupForDriver(const char *name, char *path = NULL; virCgroupPtr rootgrp = NULL; - rc = virCgroupAppRoot(privileged, &rootgrp); + rc = virCgroupAppRoot(privileged, &rootgrp, create); if (rc != 0) goto out;