summaryrefslogtreecommitdiff
path: root/src/udev/udevd.c
diff options
context:
space:
mode:
authorTom Gundersen <teg@jklm.no>2015-06-02 23:08:11 +0200
committerTom Gundersen <teg@jklm.no>2015-06-03 02:03:17 +0200
commit7500cd5e96cff52a726d03194e3b927771ddb1d4 (patch)
tree73428fffa5d22b06c0fefee5014c9f837fd385a7 /src/udev/udevd.c
parentb7f74dd48f7f3166caf781487c1f5c51f6b70d48 (diff)
udevd: make sd_notify independent of forknig/notify mode
This will simply silently fail on non-systemd systems, so there is no reason to make it conditional. Also make it clear that we notify systemd about being ready as the last step before starting the event loop, whereas the forking might need to happen earlier.
Diffstat (limited to 'src/udev/udevd.c')
-rw-r--r--src/udev/udevd.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/udev/udevd.c b/src/udev/udevd.c
index a6cddf6e5a..5fee67d8df 100644
--- a/src/udev/udevd.c
+++ b/src/udev/udevd.c
@@ -1716,15 +1716,16 @@ int main(int argc, char *argv[]) {
setsid();
write_string_file("/proc/self/oom_score_adj", "-1000");
- } else
- sd_notify(false,
- "READY=1\n"
- "STATUS=Processing...");
+ }
r = manager_listen(manager);
if (r < 0)
return log_error_errno(r, "failed to set up fds and listen for events: %m");
+ (void) sd_notify(false,
+ "READY=1\n"
+ "STATUS=Processing...");
+
r = sd_event_loop(manager->event);
if (r < 0) {
log_error_errno(r, "event loop failed: %m");