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