X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fcore%2Fcgroup.c;h=6815ca907ac5a41f331771c9a39d603aaa158882;hb=b1491eba40715438b0ac874f2be79d5622b971e1;hp=70fc925b4dfedde9bcfde694acf600f545af1b76;hpb=4a62c710b62a5a3c7a8a278b810b9d5b5a0c8f4f;p=elogind.git diff --git a/src/core/cgroup.c b/src/core/cgroup.c index 70fc925b4..6815ca907 100644 --- a/src/core/cgroup.c +++ b/src/core/cgroup.c @@ -782,7 +782,7 @@ int unit_realize_cgroup(Unit *u) { return unit_realize_cgroup_now(u, manager_state(u->manager)); } -void unit_destroy_cgroup(Unit *u) { +void unit_destroy_cgroup_if_empty(Unit *u) { int r; assert(u); @@ -791,8 +791,10 @@ void unit_destroy_cgroup(Unit *u) { return; r = cg_trim_everywhere(u->manager->cgroup_supported, u->cgroup_path, !unit_has_name(u, SPECIAL_ROOT_SLICE)); - if (r < 0) + if (r < 0) { log_debug_errno(r, "Failed to destroy cgroup %s: %m", u->cgroup_path); + return; + } hashmap_remove(u->manager->cgroup_unit, u->cgroup_path); @@ -800,7 +802,6 @@ void unit_destroy_cgroup(Unit *u) { u->cgroup_path = NULL; u->cgroup_realized = false; u->cgroup_realized_mask = 0; - } pid_t unit_search_main_pid(Unit *u) {