]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
process-util: mention that wait_for_terminate_with_timeout() should be called with...
authorLennart Poettering <lennart@poettering.net>
Thu, 17 May 2018 02:14:59 +0000 (22:14 -0400)
committerLennart Poettering <lennart@poettering.net>
Fri, 1 Jun 2018 19:49:16 +0000 (21:49 +0200)
src/basic/process-util.c

index 65abaaf88833ef499bba058c56309949342a6540..a503aa50dc4ce449792c67853ea6a8c2889286ec 100644 (file)
@@ -740,14 +740,17 @@ int wait_for_terminate_and_check(const char *name, pid_t pid, WaitFlags flags) {
 
 /*
  * Return values:
- * < 0 : wait_for_terminate_with_timeout() failed to get the state of the
- *       process, the process timed out, the process was terminated by a
- *       signal, or failed for an unknown reason.
+ *
+ * < 0 : wait_for_terminate_with_timeout() failed to get the state of the process, the process timed out, the process
+ *       was terminated by a signal, or failed for an unknown reason.
+ *
  * >=0 : The process terminated normally with no failures.
  *
- * Success is indicated by a return value of zero, a timeout is indicated
- * by ETIMEDOUT, and all other child failure states are indicated by error
- * is indicated by a non-zero value.
+ * Success is indicated by a return value of zero, a timeout is indicated by ETIMEDOUT, and all other child failure
+ * states are indicated by error is indicated by a non-zero value.
+ *
+ * This call assumes SIGCHLD has been blocked already, in particular before the child to wait for has been forked off
+ * to remain entirely race-free.
  */
 int wait_for_terminate_with_timeout(pid_t pid, usec_t timeout) {
         sigset_t mask;