valeriyvdovin / rpms / systemd

Forked from rpms/systemd 3 years ago
Clone

Blame SOURCES/0750-core-add-a-Requires-dependency-between-units-and-the.patch

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