From 199eee6aae7af3d813fbe98660c7e0fa1a8ae7b7 Mon Sep 17 00:00:00 2001 From: Pavel Hrdina Date: Thu, 27 Sep 2018 16:11:19 +0200 Subject: [PATCH] Revert "vircgroup: cleanup controllers not managed by systemd on error" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 1602aa28f820ada66f707cef3e536e8572fbda1e. There is no need to call virCgroupRemove() nor virCgroupFree() if virCgroupEnableMissingControllers() fails because it will not modify 'group' at all. The cleanup of directories is done in virCgroupMakeGroup(). Reviewed-by: John Ferlan Reviewed-by: Fabiano FidĂȘncio Reviewed-by: Marc Hartmayer Signed-off-by: Pavel Hrdina --- src/util/vircgroup.c | 25 ++++++++++--------------- 1 file changed, 10 insertions(+), 15 deletions(-) diff --git a/src/util/vircgroup.c b/src/util/vircgroup.c index f90906e4ad..548c873da8 100644 --- a/src/util/vircgroup.c +++ b/src/util/vircgroup.c @@ -1055,7 +1055,6 @@ virCgroupNewMachineSystemd(const char *name, int rv; virCgroupPtr init; VIR_AUTOFREE(char *) path = NULL; - virErrorPtr saved = NULL; VIR_DEBUG("Trying to setup machine '%s' via systemd", name); if ((rv = virSystemdCreateMachine(name, @@ -1088,24 +1087,20 @@ virCgroupNewMachineSystemd(const char *name, if (virCgroupEnableMissingControllers(path, pidleader, controllers, group) < 0) { - goto error; + return -1; } - if (virCgroupAddProcess(*group, pidleader) < 0) - goto error; - - return 0; - - error: - saved = virSaveLastError(); - virCgroupRemove(*group); - virCgroupFree(group); - if (saved) { - virSetError(saved); - virFreeError(saved); + if (virCgroupAddProcess(*group, pidleader) < 0) { + virErrorPtr saved = virSaveLastError(); + virCgroupRemove(*group); + virCgroupFree(group); + if (saved) { + virSetError(saved); + virFreeError(saved); + } } - return -1; + return 0; } -- GitLab