661545
From 0600681f04e3818282a2d518ec3e6afee85f7978 Mon Sep 17 00:00:00 2001
9ab0c5
From: Lennart Poettering <lennart@poettering.net>
9ab0c5
Date: Tue, 29 Sep 2015 13:06:28 +0200
9ab0c5
Subject: [PATCH] core: add a "Requires=" dependency between units and the
9ab0c5
 slices they are located in
9ab0c5
9ab0c5
We place the processes we fork off in the cgroup anyway, and we probably
9ab0c5
shouldn't be able to get that far if we couldn't set up the slice due to
9ab0c5
resource problems or unmet conditions. Hence upgrade the dependency
9ab0c5
between units and the slices they are located in from Wants= to
9ab0c5
Requires=.
9ab0c5
9ab0c5
(cherry picked from commit 8c8da0e0cb498245c765732cf9caa081a70c560f)
9ab0c5
661545
Related: #1718953
9ab0c5
---
9ab0c5
 src/core/unit.c | 6 +++---
9ab0c5
 1 file changed, 3 insertions(+), 3 deletions(-)
9ab0c5
9ab0c5
diff --git a/src/core/unit.c b/src/core/unit.c
9ab0c5
index 37fac8db3a..1dff541ac3 100644
9ab0c5
--- a/src/core/unit.c
9ab0c5
+++ b/src/core/unit.c
9ab0c5
@@ -1113,12 +1113,12 @@ static int unit_add_slice_dependencies(Unit *u) {
9ab0c5
                 return 0;
9ab0c5
 
9ab0c5
         if (UNIT_ISSET(u->slice))
9ab0c5
-                return unit_add_two_dependencies(u, UNIT_AFTER, UNIT_WANTS, UNIT_DEREF(u->slice), true);
9ab0c5
+                return unit_add_two_dependencies(u, UNIT_AFTER, UNIT_REQUIRES, UNIT_DEREF(u->slice), true);
9ab0c5
 
9ab0c5
-        if (streq(u->id, SPECIAL_ROOT_SLICE))
9ab0c5
+        if (unit_has_name(u, SPECIAL_ROOT_SLICE))
9ab0c5
                 return 0;
9ab0c5
 
9ab0c5
-        return unit_add_two_dependencies_by_name(u, UNIT_AFTER, UNIT_WANTS, SPECIAL_ROOT_SLICE, NULL, true);
9ab0c5
+        return unit_add_two_dependencies_by_name(u, UNIT_AFTER, UNIT_REQUIRES, SPECIAL_ROOT_SLICE, NULL, true);
9ab0c5
 }
9ab0c5
 
9ab0c5
 static int unit_add_mount_dependencies(Unit *u) {