summaryrefslogtreecommitdiffstats
path: root/src/core/mount.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2013-11-25 15:35:10 +0100
committerLennart Poettering <lennart@poettering.net>2013-11-25 17:40:53 +0100
commit290837072b136624f1f3d941c7274e4b1b275021 (patch)
tree292b7477bffe99ed123f0d02ed764847fd5c76a7 /src/core/mount.c
parentswap: split state machine state ACTIVATING into two (diff)
downloadsystemd-290837072b136624f1f3d941c7274e4b1b275021.tar.xz
systemd-290837072b136624f1f3d941c7274e4b1b275021.zip
core: set some event source priorities to enforce dispatching order
Diffstat (limited to 'src/core/mount.c')
-rw-r--r--src/core/mount.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/core/mount.c b/src/core/mount.c
index bf1d433966..634dff19a9 100644
--- a/src/core/mount.c
+++ b/src/core/mount.c
@@ -1611,6 +1611,13 @@ static int mount_enumerate(Manager *m) {
r = sd_event_add_io(m->event, fileno(m->proc_self_mountinfo), EPOLLPRI, mount_dispatch_io, m, &m->mount_event_source);
if (r < 0)
goto fail;
+
+ /* Dispatch this before we dispatch SIGCHLD, so that
+ * we always get the events from /proc/self/mountinfo
+ * before the SIGCHLD of /bin/mount. */
+ r = sd_event_source_set_priority(m->mount_event_source, -10);
+ if (r < 0)
+ goto fail;
}
r = mount_load_proc_self_mountinfo(m, false);