From: Zbigniew Jędrzejewski-Szmek Date: Fri, 27 Dec 2013 20:27:24 +0000 (-0500) Subject: man: add a note about propagating signals X-Git-Tag: v209~610 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=a9a305332b7faf0d0d16db04909badaf6a095fef;hp=c4a3a17ee919e8b1197328394709edfe36d8b710 man: add a note about propagating signals --- diff --git a/man/systemd.service.xml b/man/systemd.service.xml index 27f069f6b..98507f405 100644 --- a/man/systemd.service.xml +++ b/man/systemd.service.xml @@ -734,22 +734,33 @@ ExecStart=/bin/echo $ONE $TWO ${TWO} considered successful termination, in addition to the normal successful exit code 0 and the signals SIGHUP, SIGINT, - SIGTERM and SIGPIPE. Exit status + SIGTERM, and SIGPIPE. Exit status definitions can either be numeric exit codes or termination signal names, - separated by spaces. Example: - SuccessExitStatus=1 2 8 - SIGKILL, ensures that exit - codes 1, 2, 8 and the termination - signal SIGKILL are considered clean - service terminations. This option may - appear more than once in which case - the list of successful exit statuses - is merged. If the empty string is - assigned to this option, the list is - reset, all prior assignments of this - option will have no - effect. + separated by spaces. For example: + SuccessExitStatus=1 2 8 SIGKILL + ensures that exit codes 1, 2, 8 and + the termination signal + SIGKILL are + considered clean service terminations. + + + Note that if a process has a + signal handler installed and exits by + calling + _exit2 + in response to a signal, the + information about the signal is lost. + Programs should instead perform cleanup and kill themselves with the same signal instead. See + Proper handling of SIGINT/SIGQUIT — How to be a proper program. + + This option may appear more than once + in which case the list of successful + exit statuses is merged. If the empty + string is assigned to this option, the + list is reset, all prior assignments + of this option will have no + effect.