summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichal Schmidt <mschmidt@redhat.com>2012-01-26 01:19:19 +0100
committerMichal Schmidt <mschmidt@redhat.com>2012-01-26 01:19:19 +0100
commitda375869ff31f83938123dc0d2a8d5c0f0845a0c (patch)
treeefc0cf0688c9d5a1e5a96ab9cdab224f05c09170
parentd657c51f14601d0235434ffb78cf6ac0f27cc83c (diff)
mount: fix automount regression
Tom Gundersen noticed a regression where comment=systemd.automount in fstab no longer prevented the adding of the After=foo.mount dependency into local-fs.target. He bisected it to commit 9ddc4a26. It turns out that clearing the default_dependencies flag is necessary after all, in order to avoid complementing of Wants= with After= in the target unit. We still want to add the dependencies on quota units and umount.target though.
-rw-r--r--src/mount.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/mount.c b/src/mount.c
index 6d0af4ef71..965f70567b 100644
--- a/src/mount.c
+++ b/src/mount.c
@@ -583,6 +583,11 @@ static int mount_load(Unit *u) {
if (UNIT(m)->fragment_path)
m->from_fragment = true;
+ else if (m->from_etc_fstab)
+ /* We always add several default dependencies to fstab mounts,
+ * but we do not want the implicit complementing of Wants= with After=
+ * in the target unit that this mount unit will be hooked into. */
+ UNIT(m)->default_dependencies = false;
if (!m->where)
if (!(m->where = unit_name_to_path(u->id)))
@@ -615,7 +620,7 @@ static int mount_load(Unit *u) {
if ((r = mount_add_fstab_links(m)) < 0)
return r;
- if (UNIT(m)->default_dependencies)
+ if (UNIT(m)->default_dependencies || m->from_etc_fstab)
if ((r = mount_add_default_dependencies(m)) < 0)
return r;