diff --git a/daemon/daemon.c b/daemon/daemon.c index 6820e1181..994489e21 100644 --- a/daemon/daemon.c +++ b/daemon/daemon.c @@ -662,7 +662,10 @@ daemon_fork(struct daemon* daemon) log_info("start of service (%s).", PACKAGE_STRING); worker_work(daemon->workers[0]); #ifdef HAVE_SYSTEMD - sd_notify(0, "STOPPING=1"); + if (daemon->workers[0]->need_to_exit) + sd_notify(0, "STOPPING=1"); + else + sd_notify(0, "RELOADING=1"); #endif log_info("service stopped (%s).", PACKAGE_STRING); diff --git a/doc/Changelog b/doc/Changelog index a5d4034fd..88ea6a949 100644 --- a/doc/Changelog +++ b/doc/Changelog @@ -1,3 +1,6 @@ +21 June 2018: Wouter + - #4108: systemd reload hang fix. + 19 June 2018: Wouter - Fix for unbound-control on Windows and set TCP socket parameters more closely.