[systemd-commits] src/mount.c

Michal Schmidt michich at kemper.freedesktop.org
Wed Jan 25 16:28:34 PST 2012


 src/mount.c |    7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

New commits:
commit da375869ff31f83938123dc0d2a8d5c0f0845a0c
Author: Michal Schmidt <mschmidt at redhat.com>
Date:   Thu Jan 26 01:19:19 2012 +0100

    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.

diff --git a/src/mount.c b/src/mount.c
index 6d0af4e..965f705 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;
 



More information about the systemd-commits mailing list