From: Michael Tremer Date: Sun, 10 Mar 2013 00:22:37 +0000 (+0100) Subject: cgroup: Move builder process out of cgroup before destroying it. X-Git-Tag: 0.9.26~12 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=3503b1493c09bbcca6d8dff203126703a7fc5822;p=pakfire.git cgroup: Move builder process out of cgroup before destroying it. Before all processes in the cgroup are killed, the builder process is migrated to the parent group, because kill_and_wait() waits for nothing because it will never kill its own process. --- diff --git a/python/pakfire/builder.py b/python/pakfire/builder.py index 7427a8cc7..944c1a03d 100644 --- a/python/pakfire/builder.py +++ b/python/pakfire/builder.py @@ -200,11 +200,13 @@ class BuildEnviron(object): def stop(self): if self.cgroup: + # Move the builder process out of the cgroup. + self.cgroup.migrate_task(self.cgroup.parent, os.getpid()) + # Kill all still running processes in the cgroup. self.cgroup.kill_and_wait() # Remove cgroup and all parent cgroups if they are empty. - self.cgroup.migrate_task(self.cgroup.root, os.getpid()) self.cgroup.destroy() parent = self.cgroup.parent