summaryrefslogtreecommitdiff
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
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.
-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");