diff --git a/TODO b/TODO
index 0a36aee643..102a8138b9 100644
--- a/TODO
+++ b/TODO
@@ -397,6 +397,7 @@ Features:
- resource control in systemd
- inhibiting
- testing with Harald's awesome test kit
+ - restart
* allow port=0 in .socket units
diff --git a/man/systemd.service.xml b/man/systemd.service.xml
index c4bd65e349..72b67c6988 100644
--- a/man/systemd.service.xml
+++ b/man/systemd.service.xml
@@ -580,17 +580,46 @@
- RestartPreventExitStatus=
- Specify exit status list, which
- will prevent service from restart. Codes are
- separated by whitespace (e.g. "1 6 SIGKILL").
+ SuccessExitStatus=
+ Takes a list of exit
+ status definitions that when returned
+ by the main service process will be
+ considered successful termination, in
+ addition to the normal successful exit
+ code 0 and the signals SIGHUP, SIGINT,
+ SIGTERM and SIGPIPE. Exit status
+ definitions can either be numeric exit
+ codes or termination signal names, and
+ are are 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.
- SuccessExitStatus=
- Specify exit status list, which
- will be considered as successful exit. Codes are
- separated by whitespace (e.g. "1 6 SIGKILL").
+ RestartPreventExitStatus=
+ Takes a list of exit
+ status definitions that when returned
+ by the main service process will
+ prevent automatic service restarts
+ regardless of the restart setting
+ configured with
+ Restart=. Exit
+ status definitions can either be
+ numeric exit codes or termination
+ signal names, and are separated by
+ spaces. Defaults to the empty list, so
+ that by default no exit status is
+ excluded from the configured restart
+ logic. Example:
+ "RestartPreventExitStatus=1 6
+ SIGABRT", ensures that exit
+ codes 1 and 6 and the termination signal
+ SIGABRT will not result in automatic
+ service restarting.