On Sat, Feb 15, 2014 at 06:18:40PM +0100, Lennart Poettering wrote: > On Sat, 15.02.14 02:38, Yuxuan Shui (yshu...@gmail.com) wrote: > > > Commit 5ba6985b moves the UNIT_VTABLE(u)->sigchld_event before systemd > > actually reap the zombie. Which leads to service_load_pid_file accept > > zombie as a valid pid. > > service_load_pid_file() actually checks the validity of all PIDs before > making use of them, with kill(pid, 0). Zombies actually result in ESRCH > when one tries to kill them, and we will not accept the PID. > > Is this a real problem you encountered? Are you suggesting the kill() > check doesn't work? If so, we should probably fix that rather than > adding some new code...
It does fix things for me. Quoting the commit message: This fixes timeouts like: [ 2746.602243] systemd[1]: chronyd.service stop-sigterm timed out. Killing. [ 2836.852545] systemd[1]: chronyd.service still around after SIGKILL. Ignoring. [ 2927.102187] systemd[1]: chronyd.service stop-final-sigterm timed out. Killing. [ 3017.352560] systemd[1]: chronyd.service still around after final SIGKILL. Entering failed mode. Zbyszek _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel