[systemd-devel] [PATCH] Possible fix for complex automounts
Malte Starostik
lists at malte.homeip.net
Tue Jun 5 12:10:28 PDT 2012
From: Malte Starostik <m-starostik at versanet.de>
If accessing an automount point triggers more changes to
/proc/self/mountinfo than just to add the directly wanted mount, these
changes can lead to spurious -ENODEV notifications on the automount unit
causing the request to fail when in fact the mount will be setup right
afterwards.
---
src/core/mount.c | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/core/mount.c b/src/core/mount.c
index b885baa..7f82288 100644
--- a/src/core/mount.c
+++ b/src/core/mount.c
@@ -655,8 +655,10 @@ static void mount_set_state(Mount *m, MountState state) {
state == MOUNT_REMOUNTING_SIGKILL ||
state == MOUNT_UNMOUNTING_SIGTERM ||
state == MOUNT_UNMOUNTING_SIGKILL ||
- state == MOUNT_FAILED)
- mount_notify_automount(m, -ENODEV);
+ state == MOUNT_FAILED) {
+ if (state != old_state)
+ mount_notify_automount(m, -ENODEV);
+ }
if (state != old_state)
log_debug("%s changed %s -> %s",
--
1.7.3.4
More information about the systemd-devel
mailing list