From 1b5601907efffd364b660bb75156b2aed49c46a4 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Wed, 19 May 2010 03:42:05 +0200 Subject: [PATCH 1/1] automount: never consider our own mount point a prefix mount of us --- fixme | 3 ++- src/automount.c | 5 +++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/fixme b/fixme index 969c6cd30..0894c4701 100644 --- a/fixme +++ b/fixme @@ -65,7 +65,8 @@ * teach dbus to talk to systemd when autospawning services -* unix sockets chown()/chgrp() +* Figure out which signal handlers we actually have to reset in the + forked off child Regularly: diff --git a/src/automount.c b/src/automount.c index 465354f55..32680461c 100644 --- a/src/automount.c +++ b/src/automount.c @@ -59,6 +59,8 @@ static void repeat_unmout(const char *path) { assert(path); for (;;) { + /* If there are multiple mounts on a mount point, this + * removes them all */ if (umount2(path, MNT_DETACH) >= 0) continue; @@ -118,6 +120,9 @@ int automount_add_one_mount_link(Automount *a, Mount *m) { if (!path_startswith(a->where, m->where)) return 0; + if (path_equal(a->where, m->where)) + return 0; + if ((r = unit_add_dependency(UNIT(m), UNIT_BEFORE, UNIT(a), true)) < 0) return r; -- 2.30.2