43ff24c
From 5ad965069574badd35f79ecb8e6def133de8bd8b Mon Sep 17 00:00:00 2001
43ff24c
From: Umut Tezduyar Lindskog <umut.tezduyar@axis.com>
43ff24c
Date: Tue, 15 Jul 2014 08:36:29 +0200
43ff24c
Subject: [PATCH] core: fix oneshot service resource control
43ff24c
43ff24c
Oneshot services's cgroup is removed when the service
43ff24c
exits. An assert is hit otherwise.
43ff24c
43ff24c
(cherry picked from commit 285cd771cbe275265e165bdb5650b92b31eeab47)
43ff24c
---
43ff24c
 src/core/manager.c | 3 ++-
43ff24c
 1 file changed, 2 insertions(+), 1 deletion(-)
43ff24c
43ff24c
diff --git a/src/core/manager.c b/src/core/manager.c
43ff24c
index 0cb2044325..edcde31ec1 100644
43ff24c
--- a/src/core/manager.c
43ff24c
+++ b/src/core/manager.c
43ff24c
@@ -2539,7 +2539,8 @@ void manager_check_finished(Manager *m) {
43ff24c
         }
43ff24c
 
43ff24c
         SET_FOREACH(u, m->startup_units, i)
43ff24c
-                cgroup_context_apply(unit_get_cgroup_context(u), unit_get_cgroup_mask(u), u->cgroup_path, manager_state(m));
43ff24c
+                if (u->cgroup_path)
43ff24c
+                        cgroup_context_apply(unit_get_cgroup_context(u), unit_get_cgroup_mask(u), u->cgroup_path, manager_state(m));
43ff24c
 
43ff24c
         bus_manager_send_finished(m, firmware_usec, loader_usec, kernel_usec, initrd_usec, userspace_usec, total_usec);
43ff24c