Use KillMode=process with caution: restart loop could deplete resources

I recently debugged a resource leak where a systemd service kept restarting while leaving a process behind after each restart. The root cause isn't particularly interesting: a backward-incompatible third-party dependency upgrade. But the debugging process and lessons learned are. Thousands of zombie processes from a systemd service I have a foo.service that runs /usr/bin/start-foo, which spawns a…