X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fcore%2Fscope.c;h=8b2bb29ed8a9f4807d2f518cff0894565387fa8d;hb=9fff898181e71ab6389071b5c35b3ab7112b953e;hp=e0da6e4db7965739cd99ad5444b5816ebcc1599b;hpb=7b3fd6313c4b07b6f822a9f979d0c22350a401d9;p=elogind.git diff --git a/src/core/scope.c b/src/core/scope.c index e0da6e4db..8b2bb29ed 100644 --- a/src/core/scope.c +++ b/src/core/scope.c @@ -20,12 +20,10 @@ ***/ #include -#include #include #include "unit.h" #include "scope.h" -#include "load-fragment.h" #include "log.h" #include "dbus-scope.h" #include "special.h" @@ -173,7 +171,7 @@ static int scope_load(Unit *u) { return scope_verify(s); } -static int scope_coldplug(Unit *u) { +static int scope_coldplug(Unit *u, Hashmap *deferred_work) { Scope *s = SCOPE(u); int r; @@ -288,6 +286,9 @@ static int scope_start(Unit *u) { if (!u->transient && UNIT(s)->manager->n_reloading <= 0) return -ENOENT; + (void) unit_realize_cgroup(u); + (void) unit_reset_cpu_usage(u); + r = unit_attach_pids_to_cgroup(u); if (r < 0) return r; @@ -295,7 +296,7 @@ static int scope_start(Unit *u) { s->result = SCOPE_SUCCESS; scope_set_state(s, SCOPE_RUNNING); - return 0; + return 1; } static int scope_stop(Unit *u) { @@ -311,7 +312,7 @@ static int scope_stop(Unit *u) { s->state == SCOPE_ABANDONED); scope_enter_signal(s, SCOPE_STOP_SIGTERM, SCOPE_SUCCESS); - return 0; + return 1; } static void scope_reset_failed(Unit *u) {