File remote-fs-after-network.patch of Package systemd.1408
From f286eb7f2b696b4ce78ac284dc0b07cac78a34f9 Mon Sep 17 00:00:00 2001
From: Lennart Poettering <lennart@poettering.net>
Date: Tue, 1 Nov 2011 22:27:48 +0100
Subject: [PATCH 1/2] mount: order remote mounts after both network.target and
remote-fs-pre.target
Since remote-fs-pre.target is optional we cannot count on it to order
remote mounts after network.target, so let's add that order explicitly
in addition to remote-fs-pre.target.
https://bugzilla.redhat.com/show_bug.cgi?id=749940
---
src/mount.c | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
Index: systemd-37/src/mount.c
===================================================================
--- systemd-37.orig/src/mount.c
+++ systemd-37/src/mount.c
@@ -329,7 +329,7 @@ static bool needs_quota(MountParameters
}
static int mount_add_fstab_links(Mount *m) {
- const char *target, *after = NULL;
+ const char *target, *after, *tu_wants = NULL;
MountParameters *p;
Unit *tu;
int r;
@@ -359,18 +359,27 @@ static int mount_add_fstab_links(Mount *
if (mount_is_network(p)) {
target = SPECIAL_REMOTE_FS_TARGET;
- after = SPECIAL_REMOTE_FS_PRE_TARGET;
+ after = tu_wants = SPECIAL_REMOTE_FS_PRE_TARGET;
} else {
target = SPECIAL_LOCAL_FS_TARGET;
after = SPECIAL_LOCAL_FS_PRE_TARGET;
}
- if ((r = manager_load_unit(m->meta.manager, target, NULL, NULL, &tu)) < 0)
+ r = manager_load_unit(m->meta.manager, target, NULL, NULL, &tu);
+ if (r < 0)
return r;
- if (after)
- if ((r = unit_add_dependency_by_name(UNIT(m), UNIT_AFTER, after, NULL, true)) < 0)
+ if (tu_wants) {
+ r = unit_add_dependency_by_name(tu, UNIT_WANTS, tu_wants, NULL, true);
+ if (r < 0)
return r;
+ }
+
+ if (after) {
+ r = unit_add_dependency_by_name(UNIT(m), UNIT_AFTER, after, NULL, true);
+ if (r < 0)
+ return r;
+ }
if (automount) {
Unit *am;